Как сделать monkeypatch типизированных массивов в ECMAScript 3 JavaScript, в частности Uint8Array? (Необходимость IDE в Adobe ESTK)
Я работаю над Adobe ExtendScript (.jsx), который в основном является подмножеством старого стандарта JavaScript ECMAScript 3.
Чтобы использовать разработанный с открытым исходным кодом код, написанный на JS ECMAScript 5+, мне нужно реализовать Typed Arrays (через Monkeypatching или другой метод), чтобы отличить Uint8Array от "обычных" Array.
1 ответ
Вы можете попробовать этот polyfill с ExtendScript. Это не работает прямо из коробки, хотя:
- Вам нужно найти и заменить переменную
final
как считает ExtendScript, это зарезервированное ключевое слово. Просто добавьте подчеркивание (т.е._final
). self
приведенный в качестве аргумента к патчу должен быть заменен наthis
Я провел очень ограниченный тест с этим полизаполнением в ExtendScript, но, кажется, он работает довольно хорошо для более простых вещей, даже с уменьшенной производительностью, которую вы в противном случае имели бы.
Это вернет истину для array instanceof Uint8Array
(если конечно array
был объявлен как один).