JavaScript 通过互联网可以轻松地和当前网页域名的服务器进行通讯。但是从其他网站/域名的服务器中获取数据的能力是受限的。尽管这可以实现,但是需要来自远程服务器的明确协议(在 HTTP 头中)。这也是为了用户的数据安全。
浏览器环境外的 JavaScript 一般没有这些限制。例如服务端的 JavaScript 就没有这些限制。现代浏览器还允许安装可能会要求扩展权限的插件或扩展。
是什么使得 JavaScript 与众不同?至少有 3 件事值得一提:
+ 和 HTML/CSS 完全的集成。 + 使用简单的工具完成简单的任务。 + 被所有的主流浏览器支持,并且默认开启。满足这三条的浏览器技术也只有 JavaScript 了。
这就是为什么 JavaScript 与众不同!这也是为什么它是创建浏览器界面的最普遍的工具。
此外,JavaScript 还支持创建服务器,移动端应用程序等。
比 JavaScript “更好”的语言不同的人喜欢不同的功能,JavaScript 的语法也不能够满足所有人的需求。
这是正常的,因为每个人的项目和需求都不一样。
所以,最近出现了很多不同的语言,这些语言在浏览器中执行之前,都会被编译(转化)成 JavaScript。
现代化的工具使得编译速度非常快速且透明,实际上允许开发人员使用另一种语言编写代码并将其自动转换为 JavaScript。
这些编程语言的例子有:
CoffeeScript 是 JavaScript 的语法糖,它语法简短,明确简洁。通常使用 Ruby 的人喜欢用。
TypeScript 将注意力集中在增加严格的数据类型。这样就能简化开发,也能用于开发复杂的系统。TypeScript 是微软开发的。
Flow 也添加了数据类型,但是以一种不同的方式。由 Facebook 开发。
Dart 是一门独立的语言。它拥有自己的引擎用于在非浏览器环境中运行(如:手机应用),它也能被编译成 JavaScript 。由 Google 开发。
还有很多其他的语言。当然,即使我们在使用这些语言,我们也需要知道 JavaScript。因为学习 JavaScript 可以让我们真正明白我们自己在做什么。
总结JavaScript 最开始是为浏览器设计的一门语言,但是现在也被用于很多其他的环境。
现在,JavaScript 是一门在浏览器中使用最广、并且能够很好集成 HTML/CSS 的语言。
有很多其他的语言可以被编译成 JavaScript,这些语言还提供了更多的功能。最好还是了解一下这些语言,至少在掌握了 JavaScript 之后简单地看一下。
现代 JavaScript 教程:开源的现代 JavaScript 入门到进阶的优质教程。
在线免费阅读:
关注微信公众号「技术漫谈」,订阅更多精彩内容。