1.变量提升
JavaScript引擎在编译js代码时,首先解析代码,获取所有被声明的变量,然后再一行一行的运行。因此,所有变量的声明都会被提升到代码的头部,即是变量提升;
2.var作用域
在JavaScript中,{}包裹的区块不会限制var修饰的变量;
3.switch语句
switch语句中,switch语句后面的表达式,和case后面的表达式比较事,采用了严格相等运算符(===);
4.标签(label)
top:
for (var i = 0; i < 3; i++){
for (var j = 0; j < 3; j++){
if (i === 1 && j === 1) break top;
console.log('i=' + i + ', j=' + j);
}
}
JavaScript 语言允许,语句的前面有标签(label),相当于定位符,用于跳转到程序的任意位置。如上代码所示,在break后加上标签,用于跳出多重循环或特定的循环;
标签也可以用于跳出代码块:
foo: {
console.log(1);
break foo;
console.log('本行不会输出');
}
console.log(2);
// 1
// 2
标签配上continue也是一样的,可以跳出当前循环,执行定位的循环
参考链接:JavaScript 的基本语法