ES5

     let arr = [1, 2, 3, 2, 4]

for循环

         for (let i = 0; i < arr.length; i++) {
             console.log(arr[i])
         }

forEach() 没有返回值,只是针对每个元素调用func

         arr.forEach(function(elem, index, array) {
             console.log(elem, index)
         })

map() 返回新的数组,每个元素为调用func的结果

         let result = arr.map(function(value) {
             value += 1
             console.log(value)
             return value
         })
        console.log(arr, result)

filter() 返回符合func条件的元素数组

         let result = arr.filter(function(value) {
             return value == 2
         })
         console.log(arr, result)

some() 返回boolean,判断是否有元素符合func条件

         let result = arr.some(function(value) {
             console.log(value)
             return value == 4
        })
        console.log(arr, result)

every() 返回boolean,判断每个元素都符合func条件

         let result = arr.every(function(value) {
             console.log(value)
             return value == 2
        })
        console.log(arr, result)

reduce() 接收一个函数作为累加器

         let sum = arr.reduce(function(prev, cur, index, array) {
             return prev + cur
         }, 0)
         console.log(sum)

ES6

// find() 方法返回数组中满足提供的测试函数的第一个元素的值,否则返回 undefined。

        let found = array.find(function(element) {
            return element > 10;
        });

        console.log(found);

// findIndex()方法返回数组中满足提供的测试函数的第一个元素的索引。否则返回-1。其实这个和 find() 是成对的,不同的是它返回的是索引而不是值。

        let found = array.findIndex(function(element) {
            return element > 10;
        });
        console.log(found);

//for 0f

        for (let item of arr) {
            console.log(item)
        }

        for (let item of arr.values()) {
            console.log(item)
        }

        for (let item of arr.keys()) {
            console.log(item)
        }

        for (let [index, item] of arr.entries()) {
            console.log(index, item)
        }
Last modification:January 14, 2021
如果觉得我的文章对你有用,请随意赞赏