JavaScript基础(二):语法、变量声明(var、let、const)、关键字
2023-10-16 15:02:37
JavaScript 是一种流行的编程语言,它广泛应用于前端开发和后端开发中。为了更好地掌握 JavaScript,我们必须首先了解它的语法和基本概念。在这篇文章中,我们将重点讨论 JavaScript 的语法、变量声明的三种方式(var、let、const)、以及严格模式等内容。
JavaScript 语法
JavaScript 是一种基于原型、面向对象、解释型的高级编程语言。它的语法与 C 语言类似,但也有一些不同之处。JavaScript 的语法主要由以下部分组成:
- 数据类型:JavaScript 中的数据类型包括数字、字符串、布尔值、数组、对象等。
- 运算符:JavaScript 中的运算符包括算术运算符、比较运算符、逻辑运算符、赋值运算符等。
- 控制流:JavaScript 中的控制流语句包括 if 语句、switch 语句、for 循环、while 循环等。
- 函数:JavaScript 中的函数是代码的封装,它可以接受参数并返回结果。
- 数组:JavaScript 中的数组是一种有序的数据结构,它可以存储相同类型的数据。
- 对象:JavaScript 中的对象是一种无序的数据结构,它可以存储不同类型的数据。
变量声明的三种方式
在 JavaScript 中,变量声明有三种方式:var、let 和 const。这三种方式各有不同的特点和用法。
- var:var 是 JavaScript 中最传统的变量声明方式。它允许你声明一个变量,并可以在声明之后对其重新赋值。
- let:let 是 JavaScript 中 ES6 引入的新变量声明方式。它允许你声明一个变量,并且只能在声明之后对其赋值。
- const:const 也是 JavaScript 中 ES6 引入的新变量声明方式。它允许你声明一个常量,并且一旦声明之后就不能再对其重新赋值。
JavaScript 关键字
关键字是 JavaScript 中预定义的保留字,它们具有特殊的含义,不能被用作变量名、函数名或其他标识符。JavaScript 中的关键字包括:
- abstract:抽象类
- arguments:函数参数对象
- await:异步函数暂停执行
- boolean:布尔值数据类型
- break:跳出循环或 switch 语句
- byte:字节数据类型
- case:switch 语句中的 case 分支
- catch:捕获异常
- char:字符数据类型
- class:类
- const:常量声明
- continue:继续执行循环
- debugger:进入调试模式
- default:switch 语句中的默认分支
- delete:删除属性
- do:do-while 循环
- double:双精度浮点数数据类型
- else:if 语句中的 else 分支
- enum:枚举类型
- eval:执行字符串中的代码
- export:导出模块
- extends:继承类
- false:布尔值 false
- final:final 类或方法
- finally:try-catch-finally 语句中的 finally 块
- float:单精度浮点数数据类型
- for:for 循环
- function:函数声明
- goto:跳转到指定位置
- if:if 语句
- implements:实现接口
- import:导入模块
- in:in 运算符
- instanceof:instanceof 运算符
- int:整数数据类型
- interface:接口
- let:变量声明
- long:长整数数据类型
- native:本地代码
- new:创建对象
- null:null 值
- package:包
- private:私有成员
- protected:受保护成员
- public:公共成员
- return:返回函数结果
- short:短整数数据类型
- static:静态成员
- super:父类引用
- switch:switch 语句
- synchronized:同步方法或代码块
- this:指向当前对象
- throw:抛出异常
- throws:声明方法可能抛出的异常
- transient:瞬态成员
- true:布尔值 true
- try:try-catch-finally 语句中的 try 块
- typeof:获取变量的数据类型
- var:变量声明
- void:void 运算符
- volatile:volatile 变量
- while:while 循环
- with:with 语句
严格模式
严格模式是 JavaScript 中的一种特殊模式,它可以帮助我们写出更加健壮和安全的代码。严格模式会对 JavaScript 的某些语法和行为进行限制,例如:
- 禁止使用未声明的变量。
- 禁止对只读属性进行赋值。
- 禁止对函数的参数进行重新赋值。
- 禁止使用 eval() 函数。
- 禁止使用 with 语句。
要启用严格模式,可以在脚本的开头添加 "use strict" 语句。例如:
"use strict";
var x = 10;
在严格模式下,如果我们试图使用未声明的变量,就会抛出 ReferenceError 异常。例如:
"use strict";
console.log(y); // ReferenceError: y is not defined
在严格模式下,如果我们试图对只读属性进行赋值,也会抛出 TypeError 异常。例如:
"use strict";
const x = 10;
x = 20; // TypeError: Assignment to constant variable.
在严格模式下,如果我们试图对函数的参数进行重新赋值,也会抛出 TypeError 异常。例如:
"use strict";
function add(x, y) {
x = 20; // TypeError: Assignment to parameter.
}
add(10, 20);
在严格模式下,如果我们试图使用 eval() 函数,也会抛出 SyntaxError 异常。例如:
"use strict";
eval("var x = 10;"); // SyntaxError: Unexpected eval or arguments in strict mode
在严格模式下,如果我们试图使用 with 语句,也会抛出 SyntaxError 异常。例如:
"use strict";
with (obj) {
// ...
} // SyntaxError: Unexpected with statement in strict mode
总结
在本文中,我们详细介绍了 JavaScript 的语法、变量声明的三种方式(var、let、const)、关键字以及严格模式等内容。这些知识对于初学者来说非常重要,它们可以帮助我们写出更加规范和高质量的 JavaScript 代码。