AE教程 - AE表达式引擎的差异
AE表达式是基于JavaScript语言来实现的,JS在不同的发展阶段,有不同的标准(ECMAScript),AE的表达式引擎有2种:
1、Legacy Extend Script
2、JavaScript
你可以在项目设置面板中设置AE的表达式引擎。

为什么我们需要了解AE表达式引擎呢?
因为你在写AE表达式、使用AE模版、脚本或者看AE教程的时候,你的AE表达式引擎跟别人的不一样就会出现问题。
JavaScript 与旧版 ExtendScript 表达式引擎之间的语法差别
1、不允许出现表达式末尾只有 IF 而没有 ELSE 的情况
2、不使用花括号的情况下,if 和 else 不能在同一行
3、源文本属性数组索引访问字符需要 .value
4、获取Position(位置)、Scale(缩放)等数组类型的属性值需要.value
以上这些是比较常见的表达式引擎差异,AE表达式官方文档里还有其他一些不常用的差异,有兴趣的同学可以去看看。
RubberHose2 无法自动旋转的问题
在使用RubberHose2制作动画时,JavaScript引擎下,表达式报错。想让手跟着胳膊的方向旋转,需要将表达式引擎改成老版的Legacy ExtendScript引擎。
