Некоторые отличия между JavaScript и ExtendScript при написании скриптов для After Effects:
- Синтаксис. megavtogal.com Движок выражений JavaScript в After Effects 16.0 основан на ECMAScript 2018, а движок выражений Legacy ExtendScript — на ECMAScript 3 (1999). megavtogal.com
- Работа с выражениями. megavtogal.com Движок Legacy ExtendScript был терпим к свободному синтаксису в операторах if. else, однако движок JavaScript требует строгого соблюдения синтаксиса. megavtogal.com
- Доступ к символам. megavtogal.com В Legacy ExtendScript для доступа к символам текстового свойства можно использовать скобки, как для массива. megavtogal.com В JavaScript для доступа к символам необходимо добавить выражение .значение. megavtogal.com
- Устаревшие свойства и методы. megavtogal.com Устаревшие свойства и методы Snake Case (запись с подчёркиванием вместо camelCase) не поддерживаются механизмом JavaScript. megavtogal.com
- Работа с необъявленными переменными. slavabuck.wordpress.com В ExtendScript при обнаружении в скрипте необъявленной переменной вместо ожидаемой подстановки значения undefined происходит вызов исключения. slavabuck.wordpress.com
Поскольку слой ExtendScript намного старше и медленнее, чем слой JavaScript, обычно рекомендуется выполнять как можно больше задач на уровне JavaScript и только при необходимости вызывать команды на уровне ExtendScript. hyperbrew.co