区分大小写

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

标识符

所谓标识符,就是指变量、函数、属性的名字,或者函数的参数。
命名一个标识符时需要遵守如下的规则:
1.标识符中可以含有字母 、数字 、下划线_ 、$符号
2.标识符不能以数字开头
3.标识符不能是ES中的关键字或保留字
4.标识符一般都采用驼峰命名法
首字母小写,每个单词的开头字母大写,其余字母小写
helloWorld xxxYyyZzz
JS底层保存标识符时实际上是采用的Unicode编码,
所以理论上讲,所有的utf-8中含有的内容都可以作为标识符注释

  1. //单行注释
  2. /*
  3. *
  4. * 多行块级注释
  5. *
  6. */

严格模式

“use strict”; 定义 JavaScript 代码应该以“严格模式”执行。

在脚本开头进行声明,拥有全局作用域(脚本中的所有代码均以严格模式来执行):

  1. "use strict";
  2. x = 3.14; // 这会引发错误,因为 x 尚未声明

在函数中声明严格模式,拥有局部作用域(只有函数中的代码以严格模式执行):

x = 3.14;       // 这不会引发错误
myFunction();

function  myFunction() {
    "use strict";
     y = 3.14;   // 这会引发错误
}

严格模式使我们更容易编写“安全的” JavaScript。
严格模式把之前可接受的“坏语法”转变为真实的错误。
举例来说,在普通的 JavaScript 中,错打变量名会创建新的全局变量。在严格模式中,此举将抛出错误,这样就不可能意外创建全局变量。
在普通 JavaScript 中,如果向不可写属性赋值,开发者不会得到任何错误反馈。
在严格模式中,向不可写的、只能读取的、不存在的属性赋值,或者向不存在的变量或对象赋值,将抛出错误。

严格模式中不允许的事项

在不声明变量的情况下使用变量,是不允许的:

"use strict";
x = 3.14;                // 这将引发错误

对象也是变量
在不声明对象的情况下使用对象也是不允许的:

"use strict";
x = {p1:10, p2:20};      // 这将引发错误

删除变量(或对象)是不允许的:

"use strict";
function x(p1, p2) {}; 
delete x;                 // 这将引发错误

重复参数名是不允许的:

"use strict";
function x(p1, p1) {};   // 这将引发错误

八进制数值文本是不允许的:

"use strict";
var x = 010;             // 这将引发错误

转义字符是不允许的:

"use strict";
var x = \010;            // 这将引发错误

其他请查阅手册 链接
警告 “use strict” 指令只能在脚本或函数的开头被识别。

语句

分号和代码块 链接