JavaScript Array 类型 2

作者: 赵者也 | 来源:发表于2017-12-07 19:55 被阅读4次
    检测数组

    我们可以使用 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 对象的其他方法可以参考这里

    迭代方法

    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]);
            });
    

    输出结果:

    输出结果
    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);
    

    输出结果:

    输出结果

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

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

    相关文章

      网友评论

        本文标题:JavaScript Array 类型 2

        本文链接:https://www.haomeiwen.com/subject/wnflixtx.html