JavaScript基本语法
var
console.log(a)
identifier{
}
JavaScript 有一些保留字,不能用作标识符:arguments、break、case、catch、class、const、continue、debugger、default、delete、do、else、enum、eval、export、extends、false、finally、for、function、if、implements、import、in、instanceof、interface、let、new、null、package、private、protected、public、return、static、super、switch、this、throw、true、try、typeof、var、void、while、with、yield。
block
scope{
var会造成全局变量污染,ES6中let解决了这个问题
}
if{
boolean{
优先采用“严格相等运算符”(===
),而不是“相等运算符”(==
)
}
}
switch{
switch(x){
case1:
console.log();
break;
case2:
console.log();
function(){
};
break;
default:
console.log();
neverHappens();
}
var x = 1;
switch (x) {
case true:
console.log('x 发生类型转换');
break;
default:
console.log('x 没有发生类型转换');
}
// x 没有发生类型转换
}
?:{
(条件) ? 表达式1 :表达式2
条件为true时,返回表达式1值,否则返回表达式2值
var myVar;
console.log(
myVar ?
'myVar has a value' :
'myVar does not have a value'
)
var msg = '数字' + n + '是' + (n % 2 === 0 ? '偶数' : '奇数');
}
while
for{
for
语句的三个部分(initialize、test、increment),可以省略任何一个,也可以全部省略。
for ( ; ; ){
console.log('Hello World');
}
//无限循环
}
do…while
break
continue{
var i = 0;
while (i < 100){
i++;
if (i % 2 === 0) continue;
console.log('i 当前为:' + i);
}
}
label{
//标签可以是任意的标识符,但不能是保留字,语句部分可以是任意语句。
//标签通常与break语句和continue语句配合使用,跳出特定的循环。
foo: {
console.log(1);
break foo;
console.log('本行不会输出');
}
console.log(2);
// 1
// 2
//上面代码执行到break foo,就会跳出区块
}