目录
1、for 循环与 lable 标签结合使用
适用于 continue 或 break 循环时,回到标签处的循环:
for (let i = 0; i < 10; i++) {
for (let j = 0; j < 10; j++) {
console.log(i, j);
}
} // 最后一个输出为 9 9
for (let i = 0; i < 10; i++) {
for (let j = 0; j < 10; j++) {
if (i + j > 16) {
break;
}
console.log(i, j);
}
} // 最后一个输出为 9 7
top:for (let i = 0; i < 10; i++) {
for (let j = 0; j < 10; j++) {
if (i + j > 16) {
break top;
// 使用 top 作为标签,当 break 时,直接回到最外层的 for 循环
}
console.log(i, j);
}
} // 最后一个输出为 8 8
2、for - in 循环
for - in 读取的是 {key: value} 中的 key :
let person = {name: '张三', age: 18, sex: 'male'};
for (let x in person) {
console.log(x, person[x]);
// name 张三
// age 18
// sex male
}
let name = ['张三', '李四', '王五'];
for (let x in name) {
console.log(x, name[x]);
// 0 张三
// 1 李四
// 2 王五
}
3、for - of 循环
for - of 循环读取的是 value :
let name = ['张三', '李四', '王五'];
for (let x of name) {
console.log(x);
// 张三
// 李四
// 王五
}
循环拆分 String 也是可以的:
let str = 'abc';
for (let x of str) {
console.log(x);
// a
// b
// c
}