ES6 - 语法

语法定义了编写程序的规则集。每种语言规范都定义了自己的语法。

JavaScript 程序可以由 − 组成

  • 变量 − 表示可以为程序存储值的命名内存块。

  • 文字 − 表示常量/固定值。

  • 运算符 − 定义如何处理操作数的符号。

  • 关键字 − 在语言上下文中具有特殊含义的单词。

下表列出了 JavaScript 中的一些关键字。下表列出了一些常用的关键字。

break as any Switch
case if throw Else
var number string Get
module type instanceof Typeof
finally for enum Export
while void this New
null super Catch let
static return True False
  • 模块 − 表示可以在不同程序/脚本之间重复使用的代码块。

  • 注释 − 用于提高代码的可读性。JavaScript 引擎会忽略这些注释。

  • 标识符 − 这些是赋予程序中元素的名称,如变量、函数等。标识符的规则是 −

    • 标识符可以同时包含字符和数字。但是,标识符不能以数字开头。

    • 标识符不能包含下划线 (_) 或美元符号 ($ 以外的特殊符号。

    • 标识符不能是关键字。它们必须是唯一的。

    • 标识符区分大小写。标识符不能包含空格。

下表说明了一些有效和无效的标识符。

有效标识符示例 无效标识符示例

firstName

first_name

num1

$result

Var#

first name

first-name

1number

空格和换行符

ES6 会忽略程序中出现的空格、制表符和换行符。您可以在程序中自由使用空格、制表符和换行符,并且可以自由地以整洁一致的方式格式化和缩进程序,从而使代码易于阅读和理解。

JavaScript 区分大小写

JavaScript 区分大小写。这意味着 JavaScript 区分大写和小写字符。

分号是可选的

每行指令称为语句。在 JavaScript 中,分号是可选的。

示例

console.log("hello world")
console.log("We are learning ES6")

一行可以包含多个语句。但是,这些语句必须用分号分隔。

JavaScript 中的注释

注释是一种提高程序可读性的方法。注释可用于包含有关程序的其他信息,如代码作者、有关函数/构造的提示等。编译器会忽略注释。

JavaScript 支持以下类型的注释 −

  • 单行注释 (//) − // 和行尾之间的任何文本都被视为注释。

  • 多行注释 (/* */) − 这些注释可能跨越多行。

示例

//这是单行注释
/* 这是
多行注释
*/

您的第一个 JavaScript 代码

让我们从传统的"Hello World"示例开始"。

var message = "Hello World"
console.log(message)

该程序可以分析为 −

  • 第 1 行声明一个名为 message 的变量。变量是一种在程序中存储值的机制。

  • 第 2 行将变量的值打印到提示符。这里,控制台指的是终端窗口。函数 log() 用于在屏幕上显示文本。

执行代码

我们将使用 Node.js 来执行我们的代码。

  • 步骤 1 − 将文件另存为 Test.js

  • 步骤 2 − 在 Visual Studio Code 的项目资源管理器窗口中的工作文件选项下右键单击 Test.js 文件。

  • 步骤 3 − 选择在命令提示符中打开选项。

  • 步骤 4 −在 Node 的终端窗口中输入以下命令。

node Test.js

成功执行文件后将显示以下输出。

Hello World

Node.js 和 JS/ES6

ECMAScript 2015(ES6)功能分为三组 −

  • 待发布 − 这些是 V8 认为稳定的功能。

  • 阶段性功能 − 这些是几乎完成的功能,但 V8 团队认为它们不稳定。

  • 正在进行中 − 这些功能应仅用于测试目的。

第一类功能完全受支持,并且由 node 默认启用。阶段性功能需要运行时 - - harmony 标志才能执行。

可在此处找到 Node.js 组件特定 CLI 标志列表 − https://nodejs.org/api/cli.html

严格模式

ECMAScript 规范第五版引入了严格模式。严格模式对 JavaScript 施加了一层约束。它对正常的 JavaScript 语义进行了几项更改。

通过包含以下 −,可以将代码转换为在严格模式下工作

// 整个脚本严格模式语法
"use strict";
v = "Hi! I'm a strict mode script!"; // 错误:变量 v 未声明

在上面的代码片段中,整个代码作为 JavaScript 的受限变体运行。

JavaScript 还允许将严格模式限制在块的范围内,就像限制在函数的范围内一样。如下所示 −

v = 15 
function f1() { 
   "use strict"; 
   var v = "Hi!  I'm a strict mode script!"; 
}

在上面的代码片段中,函数之外的任何代码都将在非严格模式下运行。函数内的所有语句都将在严格模式下执行。

ES6 和提升

JavaScript 引擎默认将声明移至顶部。此功能称为提升。此功能适用于变量和函数。提升允许 JavaScript 在声明组件之前使用它。但是,提升的概念不适用于在严格模式下运行的脚本。

变量提升和函数提升将在后续章节中解释。