JavaScript Array 类型 2

检测数组

我们可以使用 Array.isArray() 方法判断一个对象是不是数组。

下面是一个简单的使用实例:

        var normalColors = ["red", "green", "blue"];
        normalColors[normalColors.length] = "black";
        normalColors[normalColors.length] = "white";

        console.log("normalColors is Array ? ", Array.isArray(normalColors));

输出结果:

JavaScript Array 类型 2_第1张图片
输出结果

JavaScript Array 对象的其他方法可以参考这里

迭代方法

every() 对数组中的每一项运行给定函数,如果函数对每一项都返回 true,则返回 true。
filter() 对数组中的每一项运行给定函数,返回函数会返回 true 的项组成的数组。
forEach() 对数组中的每一项运行给定函数。该方法没有返回值。
map() 对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
some() 对数组中的每一项运行给定函数,如果该函数对任一项返回 true,则返回 true。

以上方法都不会修复数组中的现有项。

下面是使用实例:

        var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1];

        var everyResult = numbers.every(function(item, index, array){
            return item > 2;
        });
        console.log("everyResult: \t", everyResult);

        var someResult = numbers.some(function(item, index, array){
            return item > 2;
        });
        console.log("someResult: \t", someResult);

        var filterResult = numbers.filter(function(item, index, array){
            return item > 2;
        });
        console.log("filterResult: \t", filterResult);

        var mapResult = numbers.map(function(item, index, array){
            return item * 2;
        });
        console.log("mapResult: \t", mapResult);

        numbers.forEach(function(item, index, array){
            console.log("array"+index+": ", item, array[index]);
        });

输出结果:

JavaScript Array 类型 2_第2张图片
输出结果
reduce 和 rightReduce 方法

使用实例:

        var numbers = [1, 2, 3, 4, 5];

        var sum = numbers.reduce(function(prevItem, curItem, index, array){
            console.log("prevItem & curItem: \t", prevItem, "&", curItem);
            return prevItem + curItem;
        });
        console.log("sum: \t", sum);

        sum = numbers.reduce(function(prevItem, curItem, index, array){
            console.log("prevItem & curItem: \t", prevItem, "&", curItem);
            return prevItem + curItem;
        }, -10);
        console.log("sum: \t", sum);

        sum = numbers.reduce(function(prevItem, curItem, index, array){
            console.log("prevItem & curItem: \t", prevItem, "&", curItem);
            return prevItem + curItem;
        }, -5);
        console.log("sum: \t", sum);

输出结果:

JavaScript Array 类型 2_第3张图片
输出结果

从输出结果我们就可以理解第二个参数的意义了。

rightReduce 方法从相反的方向执行。就不再举例了。

你可能感兴趣的:(JavaScript Array 类型 2)