1、While 循环 - 只要条件为 true,循环能够一直执行代码块。
//语法
while (条件) {
要执行的代码块
}
//例子(一遍又一遍执行,只要变量(i)小于 10):
while (i < 10) {
text += "数字是 " + i;
i++;
}
2、Do/While 循环 -do/while 循环是 while 循环的变体。在检查条件是否为真之前,这种循环会执行一次代码块,然后只要条件为真就会重复循环。
//语法
do {
要执行的代码块
}
while (条件);
//下面的例子使用了 do/while 循环。该循环会执行至少一次,即使条件为 false,因为代码块会在条件测试之前执行:
do {
text += "The number is " + i;
i++;
}
while (i < 10);
3、For循环 - For 循环是在您希望创建循环时经常使用的工具
for (语句 1; 语句 2; 语句 3) {
要执行的代码块
}
//例子
for (i = 0; i < 5; i++) {
text += "数字是 " + i + "<br>";
}
4、For/In 循环 - 语句遍历对象的属性:
var person = {a:1, b:2, c:3};
var text = "";
var key;
for (key in person) {
console.log(key)
}
//a b c
5、For/Of循环- 语句遍历数组的元素:
注意:for of无法循环遍历对象
var array = ['a','b','c'];
for(var item of array){
console.log(item);
}
//a b c
6、forEach() -用于调用数组的每个元素,并将元素传递给回调函数。
注意:
遍历每一个元素,
对于空数组是不会执行回调函数的,
本身是不支持的 continue 与 break 语句的,可以通过 some 和 every 来实现。
var arr = [1, 2, 3, 4, 5];
arr.forEach(function (item) {
console.log(item);
});
// 1 2 3 4 5
7、some() -用于检测数组中的元素是否满足指定条件(函数提供)。
some() 方法会依次执行数组的每个元素:
如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
如果没有满足条件的元素,则返回false。
注意:
some() 不会对空数组进行检测。
some() 不会改变原始数组。
var arr = [1, 2, 3, 4, 5];
arr.some(function (item) {
console.log(item)
return item===4
});
// 1 2 3 4 true
8、every()- 用于检测数组所有元素是否都符合指定条件(通过函数提供)。
every() 方法使用指定函数检测数组中的所有元素:
如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。
如果所有元素都满足条件,则返回 true。
注意:
every() 不会对空数组进行检测。
every() 不会改变原始数组。
let array = [1, 2, 3, 4, 5]
array.every(function (elem, index, arr) {
console.log(elem)
return elem >= 3;
})
// false
9、filter() 创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
let array = [1, 2, 3, 4, 5]
array.filter(function (elem) {
return (elem > 3);
})
// [4, 5]
注意: filter() 不会对空数组进行检测,不会改变原始数组。
10、map() -方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
map() 方法按照原始数组元素顺序依次处理元素。
注意:
map() 不会对空数组进行检测。
map() 不会改变原始数组。
let array = [1, 2, 3];
array.map(function (item) {
return item*2;
})
// 返回[2, 4, 6]