数组的常用方法总结
 
不改变原数组
1、Array.length;                       //获取数组长度
2、Array.join();                         //将数组以传入的字符串进行拼接,返回拼接后的字符串,默认以“,”来拼接。
3、Array.concat();                    //可以向数组末尾添加传入的多个元素,或者是数组
4、Array.slice()                        //用于复制下数组的一部分,传入的两个参数分别指定开始和结束位置,负数则逆向的数。
5、Array.toString()                  //等同于Array.join(',');
6、Array.every(function(value,index,Array)) {} );     //用于对数组中的每个元素进行条件检测,全部满足则返回true,否则返回false;
7、Array.some(function(value,index,Array)) {} );    //用于对数组中的每个元素进行条件检测,只要有一个满足则返回true,否则返回false;
8、Array.filter(function(value,index,Array)) {} );     //用于筛选满足条件的数组元素,并将其构成新数组返回;
9、Array.map(function(value,index,Array)) {} );     //用于对数组中的每个元素进行修改,并返回其构成的新数组
10、Array.forEach(function(value,index,Array)) {} );              //用于对数组中的每个元素操作,没有返回值
11、Array.reduce(function(prev,cur,index,Array) {}, [init]);
 //迭代数组的所有项,然后构建一个最终的返回的值。第一个参数为处理函数,参数分别为前一个值、当前值、索引、数组。
 //第二个可选参数为初始值,如果省略,则为数组的首个元素
 //在空数组中,并且无初始值,会导致错误;
 //数组只有一个值,并且无初始值,或者为空数组但是有初始值,会返回那个值。
 //实例:
 var values = [1,2,3,4,5];
 var sum = values.reduce(function(prev, cur, index, values) {
        return prev + cur;
 });
 
12、Array.reduceRight(function(prev,cur,index,Array) {}, [init]);
 //与reduce方法作用相同,但是会从右端开始。
 
13、Array.indexOf(index,[start]);         //用于从开始位置(可选)查找指定的数组元素,返回其索引位置,查找不到则返回-1
14、Array.lastIndexOf(index,[start]);     //类似于indexOf方法,但是会从右端开始查找。
 
改变原数组
1、Array.reverse();       //将数组中的元素逆序,返回逆序的数组
2、Array.sort();          //排列数组元素,默认安字母表顺序排列,且大写字母排在小写字母的前面,返回排列后的数组
 拓展:排列数字  Array.sort(function(a, b) {
                                  return a - b;
                           });
  不区分大小写: Array.sort(function(a, b) {
                                   var m = a.toLowerCase(),
                                          n = b.toLowerCase();
                                   if(m > n) {
                                         return 1
                                    } else {
                                         return -1;
                                    }
                           });
 
3、Array.splice()          //用于在数组中插入或者删除元素,第一个参数指定删除元素的位置,第二个参数指定删除元素的个数,
                                     // 若舍去则删除后面所有的元素,第三个及以后的元素将在指定的位置处添加进数组中。该函数将返回
                                     // 所删除元素所组成的数组,若没有删除任何元素,则返回一个空数组。
 
4、Array.push()        //向数组末尾添加一个或多个元素,并且返回数组的长度。
5、Array.pop()         //删除数组末尾的一个元素,返回删除的元素
6、Array.unshift()     //向数组的头部添加一个或多个元素,并返回数组长度。
7、Array.shift()       //删除数组头部的一个元素,返回删除的元素
 

JS数组方法总结的更多相关文章

  1. js 数组方法比较

    js 数组方法比较 table th:first-of-type { width: 80px; } table th:nth-of-type(2) { width: 120px; } table th ...

  2. js数组方法详解

    Array对象的方法-25个 /*js数组方法详解 */ /* * 1 concat() 用于连接多个数组或者值-------------- * 2 copyWithin() 方法用于从数组的指定位置 ...

  3. 转载收藏(js数组方法大全)

    js数组方法大全 JavaScript中创建数组有两种方式 (一)使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组var arr2 = new Arra ...

  4. js数组方法大全(上)

    # js数组方法大全(上) 记录一下整理的js数组方法,免得每次要找方法都找不到.图片有点多,注意流量,嘻嘻! 本期分享 join() reverse() sort() concat() slice( ...

  5. js数组方法大全(下)

    # js数组方法大全(下) 记录一下整理的js数组方法,免得每次要找方法都找不到.图片有点多,注意流量,嘻嘻! 本期分享 forEach() map() filer() every() some() ...

  6. JS数组方法汇总 array数组元素的添加和删除

    js数组元素的添加和删除一直比较迷惑,今天终于找到详细说明的资料了,先给个我测试的代码^-^ var arr = new Array(); arr[0] = "aaa"; arr[ ...

  7. 几个关于js数组方法reduce的经典片段

    以下是个人在工作中收藏总结的一些关于javascript数组方法reduce的相关代码片段,后续遇到其他使用这个函数的场景,将会陆续添加,这里作为备忘. javascript数组那么多方法,为什么我要 ...

  8. js数组方法详解(最新最全)

    数组是js中最常用到的数据集合,其内置的方法有很多,熟练掌握这些方法,可以有效的提高我们的工作效率,同时对我们的代码质量也是有很大影响.本文所有的栗子都是在es7环境下测试的,如果有问题欢迎留言交流 ...

  9. js数组方法解析

    js 数组有很多方法,其中有的常用,有的不常用,归纳几个常用的方法,做个总结: 1. 转换方法: 1.1 valueOf():调用这个方法会返回数组本身 <script> var arr ...

  10. js数组方法

    数组方法清空数组1: arr.length=02: arr=[]arr.push()//往数组最后一个添加元素,会待会一个返回值,就是新的数组长度arr.unshift()//往数组的第一个添加元素, ...

随机推荐

  1. Lua学习2 Lua小框架的搭建

    看了上一篇Lua环境搭建具体http://blog.csdn.net/liuwumiyuhuiping/article/details/9196435 为了方便学习. 具体新开始搭建一下学习的小框架. ...

  2. 使用 Eclipse Memory Analyzer 进行堆转储文件分析

    Eclipse Memory Analyzer(MAT)是著名的跨平台集成开发环境 Eclipse Galileo 版本的 33 个组成项目中之一,它是一个功能丰富的 JAVA 堆转储文件分析工具,可 ...

  3. Swift学习笔记:类和结构

    一.类和结构的异同 类和结构有一些相似的地方.它们都能够: 1. 定义一些能够赋值的属性: 2. 定义具有功能性的方法 3. 定义下标.使用下标语法 4. 定义初始化方法来设置初始状态 5. 在原实现 ...

  4. asp.net软件测试学习

    ormaping类是,将数据操作封装起来的一种数据操作方法,在测试的时候,如果说,insert之后对obj对象赋值赋值,每个属性应该对应自己的objDataRow["REGISTERID&q ...

  5. 微信支付java版V3验证数据合法性

    [TOC] 1. 微信支付java版V3验证数据合法性 概要:使用微信支付接口时,微信会返回或回调给商户XML数据,开发者需要验证微信返回的数据是否合法. 特别提醒:商户系统对于支付结果通知的内容一定 ...

  6. leetcode Container With Most Water python

    class Solution(object): def maxArea(self, height): """ :type height: List[int] :rtype ...

  7. 【转】Eclipse自动补全的设置方法

    转自:http://blog.csdn.net/xiadasong007/archive/2009/11/11/4799715.aspx 打开 Eclipse -> Window -> P ...

  8. System类基础

    取时间差: public class SystemDemo01 {     public static void main(String[] args) {         long startTim ...

  9. Oracle 数据库导入、导出

    第一步:新建一个txt文件: exp.exe jeamsluu@test file=d:\daochu.dmp log=1.log 另存为.bat格式的文件 第二步:双击运行:此时会弹出输入口令的对话 ...

  10. Consuming Hidden WCF RIA Services

    原文 http://codeseekah.com/2013/07/05/consuming-hidden-wcf-ria-services/ A Silverlight application mad ...