JavaScript——语法

204 阅读3分钟

语法

1. 区分大小写

ECMAScript 中的一切(变量、函数名和操作符)都区分大小写

2. 标识符

所谓标识符,就是指变量、函数、属性的名字,或者函数的参数。

标识符可以是按照下列格式规则组合起来的一或多个字符:

  • 第一个字符必须是一个字母、下划线( _ )或一个美元符号( $ );
  • 其他字符可以是字母、下划线、美元符号或数字。

ECMAScript 标识符采用驼峰大小写格式,也就是第一个字母小写,剩下的每个单词的 首字母大写

不能把关键字、保留字、 true 、 false 和 null 用作标识符

3. 注释

ECMAScript 使用 C 风格的注释,包括单行注释和块级注释。

单行注释以两个斜杠开头,如下所示:

// 单行注释

块级注释以一个斜杠和一个星号( /* )开头,以一个星号和一个斜杠( */ )结尾,如下所示:

/*
* 这是一个多行
* (块级)注释
*/

4. 严格模式

ECMAScript 5 引入了严格模式(strict mode)的概念。

严格模式是为 JavaScript 定义了一种不同的解析与执行模型。在严格模式下,ECMAScript 3 中的一些不确定的行为将得到处理,而且对某些不安全的操作也会抛出错误。要在整个脚本中启用严格模式,可以在顶部添加如下代码:

"use strict";

这行代码看起来像是字符串,而且也没有赋值给任何变量,但其实它是一个编译指示(pragma),用于告诉支持的 JavaScript 引擎切换到严格模式。这是为不破坏 ECMAScript 3 语法而特意选定的语法。

在函数内部的上方包含这条编译指示,也可以指定函数在严格模式下执行:

function doSomething(){
    "use strict";
    //函数体
}

严格模式下,JavaScript 的执行结果会有很大不同

5. 语句

ECMAScript 中的语句以一个分号结尾;如果省略分号,则由解析器确定语句的结尾

var sum = a + b // 即使没有分号也是有效的语句——不推荐
var diff = a - b; // 有效的语句——推荐

分号作用:表示语句的结束;提高解析器效率。

虽然语句结尾的分号不是必需的,但我们建议任何时候都不要省略它

如果将所有的换行去掉,语句报错

alert("我是1")alert("我是2")alert("我是3")alert("我是4") //语句报错

JS解析器原理

JS解析时,看见分号就认为语句结束。如果没有遇见分号,解析器会一直读取代码直达语句换行才会认为语句结束。Js语句没有特殊要求执行从上到下顺序执行。

代码块以左花括号( { )开头,以右花括号( } )结尾:

if (test){
    test = false;
    alert(test);
}

6. 关键字和保留字

关键字

break do instanceof typeof
case else new var
catch finally return void
continue for switch while
debugger*
function this with
default if throw
delete in try

保留字

abstract enum int short
boolean export interface static
byte extends long super
char final native synchronized
class float package throws
const goto private transient
debugger implements protected volatile
double import public