vlambda博客
学习文章列表

出道 25 年,JavaScript 是如何翻红的?

作者:Rakia Ben Sassi
翻译:实验楼
原文链接:https://medium.com/better-programming/javascript-history-and-future-71b0ceb737aa
2020 年是 JavaScript 诞生的 25 周年。在此,让我们回顾一下影响该语言历史的一些重要里程碑,并展望一下它未来的发展!

1995 年 5 月:出生

1995 年 12 月 4 日,网景公司与 Sun Microsystems 合作,公布了一种名为 JavaScript 的新编程语言,用来做专注于 internet 的跨平台开发。
他们一开始的目标是创建一种简单但功能强大的语言。为此,网景公司寻找能够一款类似 c 语法的编程语言的人,并将其合并到内部 web 浏览器中。1995 年 2 月才加入网景的布兰登・艾奇 (Brendan Eich) 接下了这个任务。1995 年 5 月,他只用了 10 天时间就写出了网景浏览器的原型,那段时间里他甚至很少睡觉。
这种语言最初被称为 Moca,后来被称为 LiveScript,最后被重命名为 JavaScript (作为 Java 的伴生语言)。

1997 年 6 月:ECMAscript 1

1999 年 12 月,该语言的第三版发布了,增强功能如下:
  • 正则表达式

  • 更好的字符串处理

  • 新控制语句

  • try /catch 异常处理

  • 更严格的错误定义

  • 数字输出的格式化

第四个版本一直没有出现,因为不同的浏览器制造商无法达成一致。ECMAScript 3 很长一段时间内都停留在这个版本。

2001 年 4 月:JSON

“道格拉斯・克罗克福德(Douglas Crockford)推出了 JSON,这是一种基于 JavaScript 的轻量级数据交换格式。JSON 数据更容易在前端加载和处理,到这个十年结束时,它将取代 XML 成为 Web 上的数据交换格式。”
——js25.org

2009 年 3 月:服务器上的 JavaScript

值得注意的是,JavaScript 从一开始就不仅打算作为客户端语言,而且还打算作服务器语言。网景的新闻稿已经提到 JavaScript 可以用来访问服务器端的数据库和动态网站。虽然在客户端上它很快就成功了,但并没有出现在服务器上。

Ryan Dahl 开发并于 2009 年发布的 Node.js 改变了这一点,它是一个让 JavaScript 运行在服务器端的开发环境,后来成为开发复杂 web 应用和云应用程序的重要平台之一。

2009–2015:ECMAscript 5 和 6

在 2009 年 12 月和 2011 年 6 月,随着版本 5 和 5.1 的发布,JavaScript 又有了一些改进。

2016–2020:异步编程

在遵循以年度为周期发布之后,ECMAScript 已经出现了 2016、2017、2018、2019 和 2020 版本。这一时期最大的变化是引入了两个关键字 async 和 await,这大大简化了异步编程。

虽然 JavaScript 世界的高速确保了充满活力的社区不断建设性和创造性地开发,但长期的可靠性受到了影响。这导致了新的挑战,特别是在企业环境中。


2020 年 5 月:Deno

Deno 是一个 JavaScript 和 TypeScript 运行时,它基于 V8 的 JavaScript 引擎和 Rust 编程语言。它是由 Ryan Dahl 创建的,即 Node.js 的创造者。他在 JSConf EU 2018 的 《我对 Node.js 感到遗憾的 10 件事》演讲中宣布了 Deno。Deno 在单个可执行文件中承担了运行时和包管理器的角色,而不需要单独的包管理程序。”

——js25.org

企业中的 JavaScript

JavaScript 已经征服了企业界,这是由于该语言和生态系统在过去 10 年里的职业化发展,也有 TypeScript 的功劳。该语言增加了一个静态类型系统,这对帮助和安全性非常大,特别是在大型和复杂的项目中。

美好的未来

jQuery 和 Node.js 之类的项目,在展示 JavaScript 在客户端和服务器端的功能方面发挥了重要作用。有了 WebAssembly 这个与其他语言有强交互性的标准,JavaScript 更成为了现代应用程序开发的优秀基础。它已经证明了自己,并保持了最初的目标,即以一种优雅的方式结合简单和力量。毫无疑问,将来还会如此。
25 岁生日快乐,JavaScript!