ES6的条件语句和循环语句
在ES6中,条件语句和循环语句的语法没有发生太大的变化,但是ES6新增了一些语法糖和方便的语法,使得我们更加方便地编写代码。
条件语句
if语句
if语句是最基本的条件语句,语法如下:
if (condition) {
// do something
} else if (condition) {
// do something
} else {
// do something
}
在ES6中,if语句没有发生太大的变化,但是我们可以使用一些语法糖来使得代码更加简洁。
三元运算符
三元运算符 ? :
可以替代简单的if语句,语法如下:
condition ? expression1 : expression2;
如果 condition
为真,则返回 expression1
,否则返回 expression2
。
例如:
let a = 1;
let b = a > 0 ? "positive" : "negative";
console.log(b); // "positive"
上面的代码中,如果 a
大于0,则返回字符串 "positive"
,否则返回字符串 "negative"
。
空值合并运算符
空值合并运算符 ??
可以替代if语句中的 null
或 undefined
的判断,语法如下:
let result = a ?? b;
如果 a
不是 null
或 undefined
,则返回 a
,否则返回 b
。
例如:
let a = null;
let b = "hello";
let c = a ?? b;
console.log(c); // "hello"
上面的代码中,如果 a
是 null
,则返回字符串 "hello"
。
switch语句
switch语句可以根据不同的条件执行不同的代码块,语法如下:
switch (expression) {
case value1:
// do something
break;
case value2:
// do something
break;
default:
// do something
}
在ES6中,switch语句没有发生太大的变化,但是我们可以使用一些语法糖来使得代码更加简洁。
case语句中使用逗号
在ES6中,case语句中可以使用逗号将多个条件合并成一个条件,语法如下:
switch (expression) {
case value1, value2:
// do something
break;
case value3:
// do something
break;
default:
// do something
}
上面的代码中,如果 expression
的值为 value1
或 value2
,则执行第一个代码块。
循环语句
for循环
for循环是最基本的循环语句,语法如下:
for (initialization; condition; increment) {
// do something
}
在ES6中,for循环没有发生太大的变化,但是我们可以使用一些语法糖来使得代码更加简洁。
for...of循环
for...of循环可以方便地遍历数组、字符串、Map和Set等可迭代对象,语法如下:
for (let value of iterable) {
// do something
}
例如:
let arr = [1, 2, 3];
for (let value of arr) {
console.log(value);
}
// 1
// 2
// 3
上面的代码中,使用for...of循环遍历数组 arr
中的元素,并打印出来。
while循环
while循环可以在给定的条件为真时重复执行代码块,语法如下:
while (condition) {
// do something
}
在ES6中,while循环没有发生太大的变化,但是我们可以使用一些语法糖来使得代码更加简洁。
do...while循环
do...while循环和while循环类似,但是它会先执行一次代码块,然后再判断条件是否为真,语法如下:
do {
// do something
} while (condition);
例如:
let i = 0;
do {
console.log(i);
i++;
} while (i < 3);
// 0
// 1
// 2
上面的代码中,使用do...while循环打印出从0到2的数字。
forEach循环
forEach循环是ES5新增的循环语句,可以方便地遍历数组中的元素,语法如下:
array.forEach(function(currentValue, index, array) {
// do something
});
例如:
let arr = [1, 2, 3];
arr.forEach(function(value, index, array) {
console.log(value);
});
// 1
// 2
// 3
上面的代码中,使用forEach循环遍历数组 arr
中的元素,并打印出来。
结语
ES6的条件语句和循环语句的语法没有发生太大的变化,但是新增了一些语法糖和方便的语法,使得我们更加方便地编写代码。掌握了这些语法,可以让我们更加高效地编写代码。