认识:

轻量级脚本语言,所谓“脚本语言”就是没有开发操作系统的能力,只是用来编写控制大型应用程序(如浏览器)的脚本;

嵌入式语言,核心语法不多,多是数学逻辑和运算,很多功能API是由宿主环境提供的;

语言版本:ECMAScript 5 => 基础,ECMAScript 6 => 下一代JavaScript,很多新特性。

基本语法:

1.

变量提升(hoisting):意思是将变量的声明提至代码头部。

console.log(a);
var a = 1;
//等同于
var a;
console.log(a);
a = 1;
//所以输出: undefined

2.

标识符(identifier):标识符就是来起名字的。

第一个字符:$、_、或字母;

第二个字符:字母或数字;

不能包含:星号、减号、加号、保留字;

中文是合法的标识符。

3.

注释:

单行注释://

多行注释:/*   */

兼容HTML注释:<!--和 -->被视为合法的单行注释

x = 1; <!-- x=2;
--> x=3;
//只有x = 1 被执行;
//-->只有在行首才被当成注释,否则被当做正常运算;
//if(n --> 3) 被当做 n-- > 3

4.

区块(block):就是花括号。

var变量不受区块限制;

{
    var a = 1;
}
console.log(a);  //输出1,外部仍然有效

5.

标签(label):用来标识语句,与break或continue配合,跳出特定循环或代码块。

top:
for(){
    for(){
        if() break top;  //直接跳出外层循环,不使用label则只挑出内层循环
    }
}

foo:
{
    if() break foo;
}

TODO:严格相等 ===,相等 ==