• 技术文章 >web前端 >js教程

    浅谈Javascript中数组对象的常用属性

    青灯夜游青灯夜游2018-10-12 16:46:11转载809
    本文给大家介绍Javascript中数组对象的常用属性 ,有一定的参考价值,有需要的朋友可以参考一下,希望对你们有所帮助。

    concat()

    用于连接两个或多个数组。该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本。

    var a = ["aa","ccc"];
    var b = ["vv","mm"];
    var c = ["123"];
    var d = a.contac(b,c);  ==> ["aa","ccc","vv","mm","123"]

    every()

    用于检测数组所有元素是否都符合指定条件(通过函数提供)。

    every() 方法使用指定函数检测数组中的所有元素:

    注意: every() 不会对空数组进行检测。

    注意: every() 不会改变原始数组。

    var ary = [3,4,5,6,7];
    var result = ary.every(function(item){   
         return item>5;          
    }) ==> false

    filter()

    创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

    注意: filter() 不会对空数组进行检测。

    注意: filter() 不会改变原始数组。

    var ary = [2,3,5,6,7];
    var result = ary.filter(function(item){   
         return item>3;
    }); ==> [5,6,7]

    forEach()

    用于调用数组的每个元素,并将元素传递给回调函数。

    var ary = [3,4,5,6,7];
    var result = ary.forEach(function(item,index){
       console.log(item,index)         
    });

    includes()

    用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。

    arr.includes(searchElement)
    arr.includes(searchElement, fromIndex)
    // searchElement   要查找的元素
    // fromIndex  开始查找的位置,默认为0;如果fromIndex 大于等于数组长度 ,则返回 false ,该数组不会被搜索
    //如果 fromIndex 为负值,计算出的索引将作为开始搜索searchElement的位置。如果计算出的索引小于 0,则整个数组都会被搜索。
    var arr = ['a', 'b', 'c'];
    arr.includes('a'); // true
    arr.includes('a', -100); // true

    indexOf()

    可返回数组中某个指定的元素位置。如果在数组中没找到指定元素则返回 -1。

    var num = [1,2,3,4,'Apple'];
    var a = num.indexOf("Apple");  //4

    lastIndexOf()

    可返回一个指定的元素在数组中最后出现的位置,在一个数组中的指定位置从后向前搜索。如果要检索的元素没有出现,则该方法返回 -1。

    var num = [1,2,3,4,'Apple'];
    var a = num.lastIndexOf("Apple");  //4

    isArray()

    用于判断一个对象是否为数组。如果对象是数组返回 true,否则返回 false。

    var item = [];
    Array.isArray(item);  //true

    join()

    用于把数组中的所有元素转换一个字符串。元素是通过指定的分隔符进行分隔的。

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    var energy = fruits.join();  //Banana,Orange,Apple,Mango
    var energy = fruits.join("|");  //Banana|Orange|Apple|Mango

    map()

    返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。

      map() 方法按照原始数组元素顺序依次处理元素。

      注意: map() 不会对空数组进行检测。

      注意: map() 不会改变原始数组。

    var ary= [4,9,16,25];
    var result = ary.map(Math.sqrt); //result ==> 2,3,4,5

    pop()

    用于删除数组的最后一个元素并返回删除的元素。

    var ary = [2,4,5,6];
    var del = ary.pop(); //del ==> 6
    // ary ==> 2,4,5

    push()

    可向数组的末尾添加一个或多个元素,并返回新的长度。

    var ary = ['aa','bb','cc'];
    var result = ary.push('ss');  //result ==> 4
    //ary ==> ['aa','bb','cc','ss']

    shift()

    用于删除并返回数组的第一个元素。

    var ary = [2,4,5,6];
    var del = ary.shift(); //del ==> 2 
    // ary ==> 4,5,6

    unshift()

    可向数组的开头添加一个或更多元素,并返回新的长度。

    var ary = ['aa','bb','cc'];
    var result = ary.unshift('ss');  //result ==> 4
    //ary ==> ['ss','aa','bb','cc']

    reduce()

    接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。

    这个函数必须接收两个参数,reduce()把结果继续和序列的下一个元素做累积计算。

    注意: reduce() 对于空数组是不会执行回调函数的。

    var arr = [1, 3, 5, 7, 9];
    arr.reduce(function (x, y) {    return x + y;
    }); // 25

    reduceRight() 方法的功能和 reduce() 功能是一样的,不同的是 reduceRight() 从数组的末尾向前将数组中的数组项做累加。

    reverse()

    用于颠倒数组中元素的顺序。

    var fruits = [1, 2, 3, 4];
    fruits.reverse();  // [4,3,2,1]

    slice()

    可从已有的数组中返回选定的元素。

    slice()方法可提取字符串的某个部分,并以新的字符串返回被提取的部分。

    注意: slice() 方法不会改变原始数组。

    返回一个新的数组,包含从 start 到 end (不包括该元素)的 arrayObject 中的元素。

    array.slice(start, end)
    //start 可选。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。
    //end 可选。规定从何处结束选取。
    //该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。
    //如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
    var fruits = ["Banana", "Orange", "Lemon", "Apple", "Mango"];
    var citrus = fruits.slice(1,3);   // ["Orange", "Lemon"]

    some()

    用于检测数组中的元素是否满足指定条件(函数提供)。

    some() 方法会依次执行数组的每个元素:

    var arr = [1, 3, 5, 7, 9];
    arr.some(function (item) {    
        return item>4;
    }); // true

    sort()

    用于对数组的元素进行排序。返回新的数组

    排序顺序可以是字母或数字,并按升序或降序。默认排序顺序为按字母升序。

    注意:当数字是按字母顺序排列时"40"将排在"5"前面。

    使用数字排序,你必须通过一个函数作为参数来调用。

    函数指定数字是按照升序还是降序排列。

    注意: 这种方法会改变原始数组!。

    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.sort();   // Apple,Banana,Mango,Orange
    
    //升序
    var points = [40,100,1,5,25,10];
    points.sort(function(a,b){return a-b});  //1,5,10,25,40,100
    
    //降序
    var points = [40,100,1,5,25,10];
    points.sort(function(a,b){return b-a});  // 100,40,25,10,5,1

    splice()

    用于插入、删除或替换数组的元素。

    注意:这种方法会改变原始数组!

    array.splice(index,howmany,item1,.....,itemX)
    //index 必需。规定从何处添加/删除元素。该参数是开始插入和(或)删除的数组元素的下标,必须是数字。
    //howmany      必需。规定应该删除多少元素。必须是数字,但可以是 "0"。如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。
    //item1, ..., itemX  可选。要添加到数组的新元素
    
    //如果从 arrayObject 中删除了元素,则返回的是含有被删除的元素的数组。
    //移除数组的第三个元素,并在数组第三个位置添加新元素:
    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.splice(2,1,"Lemon","Kiwi"); //["Banana", "Orange", "Lemon","Kiwi","Mango"]
    
    //从第三个位置开始删除数组后的两个元素:
    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    fruits.splice(2,2);  //["Banana", "Orange"]

    toString()

    可把数组转换为字符串,并返回结果。

    注意: 数组中的元素之间用逗号分隔。

    array.toString()

    valueOf()

    返回 Array 对象的原始值。

    该原始值由 Array 对象派生的所有对象继承。

    valueOf() 方法通常由 JavaScript 在后台自动调用,并不显式地出现在代码中。

    注意: valueOf() 方法不会改变原数组。

    //valueOf() 是数组对象的默认方法。
    // fruits.valueOf()与 fruits返回值一样。
    var fruits = ["Banana", "Orange", "Apple", "Mango"];
    var v=fruits.valueOf();

    总结:以上就是本篇文的全部内容,希望能对大家的学习有所帮助。更多相关教程请访问JavaScript视频教程

    相关推荐:

    JavaScript图文教程

    JavaScript在线手册

    以上就是浅谈Javascript中数组对象的常用属性的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:博客园,如有侵犯,请联系admin@php.cn删除
    上一篇:js中JSON语法在前端中的应用 下一篇:vue路由history模式刷新页面时出现404问题的两种解决方法
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• 如何高效率去掉js数组中的重复项• JS数组合并push与concat区别分析_javascript技巧• JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)_javascript技巧• js数组常见操作及数组与字符串相互转化实例详解_javascript技巧• js数组如何添加json数据及js数组与json的区别_javascript技巧
    1/1

    PHP中文网