zoukankan      html  css  js  c++  java
  • js数组方法总结

            <script>
                //原始数组
                var array = [1,2,3,4,5,6,7,8,9,0];
                
                //将数组的每一项用连接符连接成字符串
                var str = array.join('+');
                console.log('join:', str);
                
                //在数组末尾放入数组
                array.push(11);
                console.log('push', array);
                
                //在数组末尾删除数据,并返回删除的元素
                var num = array.pop();
                console.log('pop', array, num);
                
                //在数组开头插入数据
                var newArray = array.unshift(222,111);
                console.log('unshift', newArray);
                
                //在数据开头删除数据,并返回删除的元素
                num = array.shift();
                console.log('shift', array, num);
                
                //数组排序,默认比较字符串,对数组排序无效
                var newArray1 = array.sort();
                console.log('sort', newArray1);
                
                //数组排序,传入数字排序方法就可以实现数字排序
                var newArray2 = array.sort(compare);
                console.log('sort compare', newArray2);
                
                //数组反转,顺序颠倒
                var newArray3 = newArray2.reverse();
                console.log('reverse', newArray3);
                
                //添加数据到数组末尾,并返回新的数组
                var newArray4 = array.concat('mxh', ['mxh1', 'mxh2']);
                console.log('concat', newArray4);
                console.log('oldArray', array);
                
                //根据下标删除数组元素
                var newArray5 = newArray4.slice(2);
                console.log('slice', newArray5);
                var newArray6 = newArray4.slice(10, 14);
                console.log('slice', newArray6);
                
                //判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。
                var flag = array.some(isSatisfy);
                console.log('some', flag);
                
                //判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true。
                flag = array.every(isSatisfy);
                console.log('every', flag);
                
                //“过滤”功能,数组中的每一项运行给定函数,返回满足过滤条件组成的数组。
                var array1 = [1,2,3,4,5,6,7,8,9,0,100];
                var newArray7 = array1.filter(isSatisfy);
                console.log('filter', newArray7);
                
                //指“映射”,对数组中的每一项运行给定函数,返回每次函数调用的结果组成的数组。
                var newArray8 = array1.map(isSatisfy);
                console.log('map', newArray8);
                
                //对数组进行遍历循环,对数组中的每一项运行给定函数。
                //这个方法没有返回值。参数都是function类型,默认有传参,
                //参数分别为:遍历的数组内容;第对应的数组索引,数组本身。
                array.forEach(function(num, index, a){
                    console.log(num + '|' + index + '|' + (a === array));
                });
                
                
                //indexOf():接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。
                //其中, 从数组的开头(位置 0)开始向后查找。
                flag = array1.indexOf(100);
                console.log('indexOf', flag);
                
                var result = array1.indexOf(2, 3);
                console.log('indexOf1', result);
                
                
                //lastIndexOf:接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。
                //其中, 从数组的末尾开始向前查找。 
                result = array1.lastIndexOf(100);
                console.log('lastIndexOf', result);
                
                result = array1.lastIndexOf(0, 100);
                console.log('lastIndexOf', result);
                
                
                //splice():删除、插入和替换。
                //删除:指定 2 个参数:要删除的第一项的位置和要删除的项数。
                //插入:可以向指定位置插入任意数量的项,只需提供 3 个参数:起始位置、 0(要删除的项数)和要插入的项。
                //替换:可以向指定位置插入任意数量的项,且同时删除任意数量的项,只需指定 3 个参数:起始位置、要删除的项数和要插入的任意数量的项。
                //插入的项数不必与删除的项数相等。
                var arr = [1,3,5,7,9,11];
                var arrRemoved = arr.splice(0,2);
                console.log(arr);                //[5, 7, 9, 11]
                console.log(arrRemoved);            //[1, 3]
                var arrRemoved2 = arr.splice(2,0,4,6);
                console.log(arr);                // [5, 7, 4, 6, 9, 11]
                console.log(arrRemoved2);           // []
                var arrRemoved3 = arr.splice(1,1,2,4);
                console.log(arr);                // [5, 2, 4, 4, 6, 9, 11]
                console.log(arrRemoved3);           //[7]
                
                /**
                 * @description 比较方法
                 * @param {Object} num1
                 * @param {Object} num2
                 */
                function compare(num1, num2) {
                    return num1-num2;
                }
                
                /**
                 * @description 是否大于10
                 * @param {Object} num
                 */
                function isSatisfy(num) {
                    return num > 10;
                }
            </script>

    推荐阅读: https://www.cnblogs.com/zyfeng/p/10541133.html

  • 相关阅读:
    mysql存储过程
    Mysql中的触发器
    快速开始、环境搭建、修改包名、新建模块、正式部署
    windows下redis下载安装
    Windows10下mysql 8.0.19 安装配置方法图文教程
    IDEA中安装SVN
    常见页面报错
    Python AttributeError: 'Module' object has no attribute 'STARTF_USESHOWINDOW'
    如何编写一篇高质量的技术博文?学习本文的排名靠前大法
    Linux use apktool problem包体变大GLIBC2.14等问题
  • 原文地址:https://www.cnblogs.com/mxh-java/p/13226632.html
Copyright © 2011-2022 走看看