一、JavaScript 初印象
(一)起源与发展
JavaScript 的诞生源于对网页动态性的需求。1995 年,布兰登・艾奇仅用十天时间就设计出了这门语言,最初命名为 Mocha,后改为 LiveScript,最终定名为 JavaScript。它的出现为静态的网页带来了生机,使得网页能够实现实时数据刷新、响应用户交互等动态效果。随着互联网的发展,JavaScript 不断演进,从仅用于浏览器端的脚本语言,发展到如今可以在服务器端(如 Node.js)、移动应用开发等领域广泛应用。
(二)语言特点
JavaScript 是一种轻量级的编程语言,这意味着它可以在各种设备和平台上快速运行,不会给系统带来过多的负担。它属于解释型或即时编译型语言,代码可以直接在浏览器中被解释执行,无需经过复杂的编译过程。JavaScript 具有函数优先的特点,函数在语言中占据重要地位,可以作为一等公民进行传递和操作。同时,它也是一种多范式语言,支持面向对象、函数式、命令式等编程范式,开发者可以根据需求灵活选择编程风格。
(三)重要地位
在现代编程中,JavaScript 占据着至关重要的地位。它与 HTML 和 CSS 共同构成了 Web 开发的三大基石。HTML 负责网页的结构,CSS 负责网页的样式,而 JavaScript 则负责控制网页的行为,为网页添加交互性和动态效果。对于 Web 开发者来说,JavaScript 是必学的三种语言之一。随着技术的不断发展,JavaScript 的应用场景也在不断扩大,从传统的网页开发到移动应用开发、服务器端编程、桌面应用开发等领域,都能看到 JavaScript 的身影。
二、开启 JavaScript 之旅
(一)环境搭建
在开始 JavaScript 编程之旅前,我们需要搭建合适的开发环境。首先是安装 Node.js,Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。我们可以从官方网站(https://nodejs.org/en/)下载安装包,选择长期维护版本(LTS)进行下载。安装过程非常简单,一直点击 “下一步” 即可。安装完成后,可以在命令提示符中输入node -v查看 Node.js 的版本,输入npm -v查看 npm 的版本,若出现版本号则说明安装成功。
接下来选择一款代码编辑器,Visual Studio Code(VSCode)是一个非常受欢迎的选择。它是一款功能强大且免费的源代码编辑器,支持多种操作系统。可以从官方网站(https://code.visualstudio.com/)下载并安装 VSCode。安装完成后,可以根据自己的需求安装一些 JavaScript 相关的插件,如 IntelliSense、Prettier Code Formatter 等,以提高开发效率。
(二)Hello World 程序
使用 VSCode 创建第一个 JavaScript 程序非常简单。打开 VSCode,选择 “文件”>“新建文件”,将文件命名为app.js。在文件中输入以下代码:
console.log("Hello, World!");
保存文件后,在 VSCode 的终端中打开一个新的终端窗口(可以使用快捷键 `Ctrl +``),使用以下命令运行代码:
node app.js
如果一切正常,你应该会看到控制台输出 “Hello, World!”。通过这个简单的程序,我们熟悉了使用 VSCode 编写和运行 JavaScript 代码的基本流程。
三、核心语法全解析
(一)变量与数据类型
JavaScript 支持多种数据类型,为编程提供了丰富的选择。其中,字符串是由字符组成的序列,可以用单引号或双引号括起来。例如,let str = "Hello, JavaScript!"。数字类型包括整数和浮点数,可进行各种算术运算。如let num = 10; let floatNum = 3.14。布尔值只有true和false两种,常用于条件判断。例如,let isTrue = true; let isFalse = false。
对象是一组键值对的集合,可以存储不同类型的数据。如let person = {name: "John", age: 30}。数组是一组有序的数据集合,可以包含不同类型的元素。例如,let arr = [1, "two", true]。
在 JavaScript 中,变量的声明使用var、let和const关键字。var声明的变量存在变量提升现象,即可以在声明之前使用,值为undefined。let和const则不存在变量提升,且const声明的变量一旦赋值就不能再被重新赋值。变量的赋值规则较为灵活,可以在声明时赋值,也可以先声明后赋值。例如,let x; x = 10。
(二)运算符与表达式
JavaScript 中的算术运算符包括加法(+)、减法(-)、乘法(*)、除法(/)、取模(%)等。例如,let a = 10; let b = 3; let result = a % b; // result 为 1。
比较运算符用于比较两个值的大小关系,如等于(==)、严格等于(===)、大于(>)、小于(<)等。例如,let c = 5; let d = 5; console.log(c === d); // true。
逻辑运算符有与(&&)、或(||)、非(!)。例如,let e = true; let f = false; console.log(e && f); // false。
表达式是由运算符和操作数组成的式子,可以进行各种计算和判断。例如,let g = (2 + 3) * 4; // g 为 20。
(三)控制结构
JavaScript 通过if、else关键字实现条件判断。例如,let score = 80; if (score >= 60) {console.log("及格");} else {console.log("不及格");}。
for循环用于重复执行一段代码。例如,for (let i = 0; i < 5; i++) {console.log(i);}。
while循环在条件为真时重复执行代码。例如,let count = 0; while (count < 3) {console.log(count); count++;}。
(四)函数与作用域
函数在 JavaScript 中起到封装和重用代码的作用。可以通过function关键字声明函数。例如,function add(a, b) {return a + b;}。
作用域定义了变量的可见性和生命周期。全局作用域在整个脚本或文件中都可见,局部作用域只在函数内部可见。函数内部可以访问外部作