1.Array.forEach() 适用于只是进行集合或数组遍历
没有返回值
无法提前结束
跳过空值
2.Array.map() 适用于对数组遍历,并返回新数组
3.Array.filter() 返回新数组,不会改变原数组,新数组由符合条件的数组组成
let newArr = arr.filter((val) => {return val >= 0})
4.for 功能强 ,可以遍历 数组、对象、字符串
遍历数组
var arr = [1, 2, 3]
for (var i = 0; i < arr.length; i++){
console.log(arr[i]);
}
遍历对象
var obj = {
name:'mike'
}
for (var i = 0,keys = Object.keys(obj); i< keys.length; i++){
console.log(obj[keys[i]])
}
遍历字符串
let str = 'abcdefg'
for (var i = 0; i < str.length; i++){
console.log(str[i])
}
5.for....in 可以遍历 数组、对象、字符串,数组和字符串可以快速拿到索引,对象可以拿到key
遍历数组
var arr = [1, 2, 3]
for (var i in arr ){
console.log(i);//0 1 2
console.log(arr[i]);//1 2 3
}
遍历对象
var obj = {
name:'mike'
}
for (var key in obj){
console.log(key)// name
console.log(obj[key])// mike
}
遍历字符串
let str = 'ab'
for (var i in str){
console.log(i) // 0 1
console.log(str[i]) // a b
}
6.for.....of 迭代数组和字符串,直接拿到value
迭代 数组
var arr = [1, 2, 3]
for (var val of arr ){
console.log(val);// 1 2 3
}
迭代 字符串
let str = 'abc'
for (var val of str){
console.log(val) // a b c
}