# 导论

# 什么是JavaScript

  1. JavaScript 是一种轻量级的脚本语言(script language),它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序(比如浏览器)的“脚本”;

  2. JavaScript 也是一种嵌入式(embedded)语言。它本身提供的核心语法不算很多,只能用来做一些数学和逻辑运算。JavaScript 本身不提供任何与 I/O(输入/输出)相关的 API,都要靠宿主环境(host)提供,所以 JavaScript 只合适嵌入更大型的应用程序环境,去调用宿主环境提供的底层 API;

  3. 目前,已经嵌入 JavaScript 的宿主环境有多种,最常见的环境就是浏览器,另外还有服务器环境,也就是 Node 项目;

  4. 从语法角度看,JavaScript 语言是一种“对象模型”语言。各种宿主环境通过这个模型,描述自己的功能和操作接口,从而通过 JavaScript 控制这些功能。但是,JavaScript 并不是纯粹的“面向对象语言”,还支持其他编程范式(比如函数式编程);

  5. JavaScript 的核心语法部分相当精简,只包括两个部分:基本的语法构造(比如操作符、控制结构、语句)和标准库(就是一系列具有各种功能的对象比如Array、Date、Math等);

  6. 除此之外,各种宿主环境提供额外的 API(即只能在该环境使用的接口),以便 JavaScript 调用。以浏览器为例,它提供的额外 API 可以分成三大类:

    • 浏览器控制类:操作浏览器
    • DOM 类:操作网页的各种元素
    • Web 类:实现互联网的各种功能
  7. 如果宿主环境是服务器,则会提供各种操作系统的 API,比如文件操作 API、网络通信 API等等。这些你都可以在 Node 环境中找到。

# JavaScript的优势

  • 操控浏览器的能力

  • 广泛的使用领域:浏览器平台、Node、数据库操作、移动平台开发、内嵌脚本语言、跨平台的桌面应用程序

  • 简单易学:学习环境多、简单、与主流语言相似

  • 强大的性能:语法灵活、表达力强、支持编译运行、事件驱动、非阻塞式设计

  • 开放性:开放性语言

# 实验环境

  • Windows:Chrome浏览器的控制台(进入控制台快捷键:F12

  • 进入控制台以后,就可以在提示符后输入代码,然后按Enter键,代码就会执行。如果按Shift + Enter键,就是代码换行,不会触发执行