JavaScript(简称“JS”),是一个“弱类型”的基于原型的脚本语言。起初主要用于开发 Web 页面,随着发展逐渐被用到了很多非浏览器环境中。
1. 起源
1994年,一家名为 Mosaic Communications(网景)的公司在加州芒廷维尤成立了,并雇用了许多原来的 NCSA Mosaic 开发者用来开发 Mosaic Netscape,该公司的目标是取代 NCSA Mosaic 成为世界第一的网页浏览器。第一个版本的网页浏览器 Mosaic Netscape 0.9于1994年底发布。在四个月内,已经占据了四分之三的浏览器市场。这是历史上第一个比较成熟的网络浏览器,但它还只能用来浏览,不具备与访问者互动的能力。

为避免 NCSA 的商标所有权问题,该浏览器于同年更名为 Netscape Navigator,该公司命名为 Netscape Communications。网景预见到网络需要变得更动态。公司的创始人马克·安德森认为 HTML 需要一种胶水语言,让网页设计师和兼职程序员可以很容易地使用它来组装图片和插件之类的组件,且代码可以直接编写在网页标记中。
1995年,网景招募了布兰登·艾克(Brendan Eich),目标是把 Scheme 语言嵌入到 Netscape Navigator 浏览器当中。但更早之前,网景已经跟 Sun 公司合作在 Netscape Navigator 中支持 Java,这时网景内部产生激烈的争论。后来网景决定发明一种与 Java 搭配使用的辅助脚本语言,这个决策导致排除了采用现有的语言,例如 Perl、Python、Tcl 或 Scheme。为了在其他竞争提案中捍卫 JavaScript 这个想法,公司需要有一个可以运作的原型。布兰登·艾克在1995年5月仅花了十天时间就把原型设计出来了。

最初命名为 Mocha,1995 年 9 月在 Netscape Navigator 2.0的 Beta 版中改名为 LiveScript,同年12月,Netscape Navigator 2.0 Beta 3中部署时被重命名为 JavaScript,当时网景公司与 Sun 公司组成的开发联盟为了让这门语言搭上 Java 这个编程语言“热词”,因此将其临时改名为 JavaScript,日后这成为大众对这门语言有诸多误解的原因之一。
2. 作用
JavaScript 日常用途有两个方面,起初主要用于 web 页面,包括嵌入动态文本、对浏览器事件作出响应、读写 HTML 元素、在数据被提交到服务器之前验证数据、检测访客浏览器信息、创建修改 cookies 等,目前也被用于非浏览器环境,主要是基于 Node.js 技术进行服务器端编程。
3. 组成
- ECMAScript:核心语法、基本对象。
- DOM:文档对象模型,描述处理网页内容的方法和接口。
- BOM:浏览器对象模型,描述与浏览器进行交互的方法和接口。