ActionScript 是 Macromedia(后被 Adobe 收购)为 Flash 平台开发的脚本语言,基于 ECMAScript 规范。它曾驱动了2000年代网页动画、游戏与视频站点的黄金时代,随着2020年底 Flash Player 停止支持而退出历史舞台。

| 开发者 | Macromedia / Adobe |
| 首次发布 | 2000年(1.0) |
| 重要版本 | ActionScript 3.0(2006年) |
| 语法基础 | ECMAScript |
| 运行环境 | Flash Player / AIR |
| 停止支持 | 2020年12月31日 |
ActionScript是由 Macromedia 公司(2005年被 Adobe 收购)为 Flash 平台设计的面向对象脚本语言,语法基于 ECMAScript 标准。在2000年代,它是网页富媒体内容的绝对主角,驱动了无数网页动画、小游戏、广告与早期视频网站。
Flash 最初只是动画工具,1999年前后的 Flash 4 引入了简单的动作脚本;2000年发布的 ActionScript 1.0 使其成为真正的编程语言;2003年的 2.0 加入类语法与编译期类型检查;2006年随 Flash Player 9 发布的 ActionScript 3.0 则是一次彻底重写,由加里·格罗斯曼(Gary Grossman)等人主导,配合全新的 AVM2 虚拟机与即时编译,性能提升可达十倍,并具备完善的类、接口、包、事件模型与显示列表 API。当年 YouTube、优酷等视频网站的播放器、大量页游(如《开心农场》类产品)与交互广告均构建于此。随着 HTML5 崛起与移动端拒绝 Flash(2010年乔布斯发表著名公开信《关于 Flash 的思考》),Adobe 于2020年12月31日终止 Flash Player 支持,ActionScript 随之谢幕。
ActionScript 培养了一代交互开发者,其组件化、补间动画与事件模型的经验深刻影响了后来的 HTML5 动画库与游戏引擎;基于 Flash 技术的 AIR 运行时曾支撑大量移动游戏,现由哈曼(Harman)公司接手维护。开源的 Ruffle 模拟器正致力于让历史 Flash 作品在现代浏览器中复活。
问:ActionScript 和 JavaScript 是什么关系?答:两者都实现 ECMAScript 规范,是姊妹语言;ActionScript 3.0 采用的部分特性(类、类型标注)后来在 ES6 与 TypeScript 中以相似面貌出现。
问:为什么 Flash 会被淘汰?答:插件模式带来安全漏洞频发与耗电问题,移动平台拒绝支持,而 HTML5 的 canvas、视频与 CSS 动画逐步补齐了能力,开放标准最终取代了私有插件。
问:老 Flash 作品现在还能看吗?答:可以借助 Ruffle 等开源模拟器,或使用保存了旧版播放器的离线环境;不少博物馆式网站正在做此类数字保存工作。

| 开发者 | Macromedia / Adobe |
| 首次发布 | 2000年(1.0) |
| 重要版本 | ActionScript 3.0(2006年) |
| 语法基础 | ECMAScript |
| 运行环境 | Flash Player / AIR |
| 停止支持 | 2020年12月31日 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧