JavaScript 判断、循环语句
if
1if (i > 1)
2 alert('yes')
3else
4 alert('no')
如果只有一条可以省略 {},但容易导致错误,应该避免
1if (i > 1)
2 alert('yes')
do-while
1let i = 0
2do
3 i += 2
4while (i < 10)
while
1let i = 0
2while (i < 10)
3 i += 2
for
1let a = 0
2for (let i = 0; a < 10; i++)
3 a += 1
for in
1const arr = ['Saab', 'Volvo', 'BMW']
2
3for (const x in arr)
4 document.write(`${arr[x]}<br />`)
for of
1const arr = [
2 [1, 2],
3 ['a', 'b'],
4]
5for (const [key, value] of arr)
6 console.log(`${key},${value}`)
7
8// 1,2
9// a,b
- break;停止循环
- continue;停止这次循环
with
- 改变代码块的作用域,查找变量会先找 obj 里面的
- 大量使用 with 会导致性能下降,不建议使用(因为修改了作用域链)
1with (obj) {
2 // 代码块
3}
switch
1switch (i) {
2 case '0':
3 alert('1') // i为0时
4 break // 退出
5
6 default: // 默认执行
7 alert('default')
8}
关键字与保留字
ECMA-262 第 6 版规定的所有关键字如下:
break do in typeof case else instanceof var catch export new void class extends return while const finally super with continue for switch yield debugger function this default if throw delete import try
始终保留:enum
严格模式下保留:
implements package public interface protected static let private
模块代码中保留:await
这些词汇不能用作标识符,但现在还可以用作对象的属性名。一般来说最好不要用