正如上小节所说,JavaScript 可以运行在浏览器中,也可以运行在服务器上和手机中,本书仅讨论浏览器

中的JavaScript。我们在丛书《Node.js实战教程》和《React和Vue实战开发中》两书中将详细介绍JavaScript

的其他应用。

对于浏览器中的 JavaScript,它由语言核心、DOM 和 BOM 三部分组成我们用简单的代码来分别认知这三部分是什么。这些示例代码看不懂是正常的,只需要读一个大概即可,我

们将在后续章节进行讲解。

语言核心

所谓“语言核心”,指的是 JavaScript 的“语言和语法”层面的内容。

JavaScript 符合 ECMAScript 标准。ECMA 是 European Computer Mangufacturers Association 的首

字符简写,意为“欧洲计算机制造商协会”。ECMA 组织于 1997 年制定了一个脚本语言的标准,就是 ECMAScript。

JavaScript 是符合 ECMAScript 标准的,JavaScript 是 ECMAScript 的一个“实现”。

ECMAScript 标准规定了编程语言的各种语法细节,这些语法就是语言核心。

我们简单看一下 JavaScript 的语法风格。这个程序的功能是输出 100 以内的质数:

for(var i = 2 ; i <= 100 ; i++){

var count = 0;

for(var j = 1 ; j <= i ; j++){

if(i % j == 0){

count ++;

}

}

if(count == 2){

console.log(i);

}

}

如果你有 C 语言或者 Java 编程基础,你会感觉 JavaScript 的语法风格和它们非常类似。的确,JavaScript

借鉴了很多 C 语言的语法特点,比如本程序中使用的 for 循环语句、if 选择语句和++运算符等都和 C 语言相同。

我们将在本书第 2 章到第 7 章学习 JavaScript 语言核心的内容。正如万丈高楼平地起,我们一定要把基础

打牢。

DOM

文档对象模型(DOM,Document Object Model)是 HTML 提供给 JavaScript 操作它的接口。使用 DOM,

JavaScript 可以轻松操作 HTML 标签,从而可以制作网页特效。

我们用一段程序感知什么是 DOM。这段程序实现了“点击按钮使盒子变红色”的功能:

var oBtn = document.getElementById("btn");

var oBox = document.getElementById("box");

oBtn.onclick = function(){

oBox.style.backgroundColor = "red";

}

可见,JavaScript“寥寥几笔”就实现了一个简单的页面特效,这完全得益于 DOM 的帮助,所有的网页特

效都基于 DOM 进行开发。我们将在本书第 8 到 10 章学习学习 DOM 知识。

 BOM

浏览器对象模型(BOM,Browser Object Model)是浏览器窗口提供给 JavaScript 操作它的接口。我们

可以利用 BOM 提供的一些方法,轻松实现诸如弹出新窗口、得到浏览器分辨率信息等功能。本书不涉及 BOM 的

相关内容,我们在丛书《jQuery 和 Ajax 实战教程》中介绍。

JavaScript 开发工具

和众多编程语言一样,任何一个文本编辑器都可以开发 JavaScript 程序。比如最简单的文本编辑器就是

windows 自带的“记事本”,它确实可以写 JavaScript 程序,但是并不好用。为了开发方便,我们需要使用

IDE(integrated development environment,集成开发环境)来写程序。

常见的 JavaScript 开发 IDE 有 Sublime、Visual Studio Code、WebStorm 和 HBuilder。除 WebStorm

外,它们都是免费的,同学们可以通过搜索引擎下载安装它们。当然,你可以多试验几款 IDE,选择最适合自己

的一个,让它成为你最顺手的“武器”。

IDE 有着丰富的功能,比如“智能感应”。比如在 sublime 中,当我们输入“do”的时候,IDE 就会猜测

我们可能想输入的单词,用列表显示出来,供我们选择。

因为 JavaScript 运行在浏览器中,运行不需要编译、连接资源等步骤,所以 JavaScript 的 IDE 往往尺

寸都较小,非常轻便。