操作数组

印象中数组有很多方法,系统的整理一下,放在自己家里方便回头查~

  1. Array.map()

    此方法是将数组中的每个元素调用一个提供的函数,结果作为一个新的数组返回,并没有改变原来的数组
    1
    2
    3
    4
    let arr = [1, 2, 3, 4, 5]
        let newArr = arr.map(x => x*2)
        //arr= [1, 2, 3, 4, 5]   原数组保持不变
        //newArr = [2, 4, 6, 8, 10] 返回新数组

      

  2. Array.forEach()

    此方法是将数组中的每个元素执行传进提供的函数,没有返回值,直接改变原数组,注意和map方法区分
    1
    2
    3
    let arr = [1, 2, 3, 4, 5]
       num.forEach(x => x*2)
       // arr = [2, 4, 6, 8, 10]  数组改变,注意和map区分

      

  3. Array.filter()

    此方法是将所有元素进行判断,将满足条件的元素作为一个新的数组返回
    1
    2
    3
    4
    let arr = [1, 2, 3, 4, 5]
        const isBigEnough => value => value >= 3
        let newArr = arr.filter(isBigEnough )
        //newNum = [3, 4, 5] 满足条件的元素返回为一个新的数组

      

  4. Array.every()

    此方法是将所有元素进行判断返回一个布尔值,如果所有元素都满足判断条件,则返回true,否则为false:
    1
    2
    3
    4
    5
    let arr = [1, 2, 3, 4, 5]
        const isLessThan4 => value => value < 4
        const isLessThan6 => value => value < 6
        arr.every(isLessThan4 ) //false
        arr.every(isLessThan6 ) //true

      

  5. Array.some()

     此方法是将所有元素进行判断返回一个布尔值,如果存在元素都满足判断条件,则返回true,若所有元素都不满足判断条件,则返回false:
    1
    2
    3
    4
    5
    let arr= [1, 2, 3, 4, 5]
        const isLessThan4 => value => value < 4
        const isLessThan6 => value => value > 6
        arr.some(isLessThan4 ) //true
        arr.some(isLessThan6 ) //false

      

  6. Array.reduce()

     此方法是所有元素调用返回函数,返回值为最后结果,传入的值必须是函数类型:
    1
    2
    3
    4
    5
    let arr = [1, 2, 3, 4, 5]
       const add = (a, b) => a + b
       let sum = arr.reduce(add)
       //sum = 15  相当于累加的效果
       与之相对应的还有一个 Array.reduceRight() 方法,区别是这个是从右向左操作的

      

  7. Array.push()

     此方法是在数组的后面添加新加元素,此方法改变了数组的长度:
  8. Array.pop()

     此方法在数组后面删除最后一个元素,并返回数组,此方法改变了数组的长度:
    1
    2
    3
    4
    let arr = [1, 2, 3, 4, 5]
        arr.pop()
        console.log(arr) //[1, 2, 3, 4]
        console.log(arr.length) //4

      

  9. Array.shift()

     此方法在数组后面删除第一个元素,并返回数组,此方法改变了数组的长度:
    1
    2
    3
    4
    let arr = [1, 2, 3, 4, 5]
        arr.shift()
        console.log(arr) //[2, 3, 4, 5]
        console.log(arr.length) //4 

      

  10. Array.unshift()

     此方法是将一个或多个元素添加到数组的开头,并返回新数组的长度:
    1
    2
    3
    4
    let arr = [1, 2, 3, 4, 5]
        arr.unshift(6, 7)
        console.log(arr) //[6, 7, 2, 3, 4, 5]
        console.log(arr.length) //7 

      

  11. Array.isArray()

     判断一个对象是不是数组,返回的是布尔值
  12. Array.concat()

     此方法是一个可以将多个数组拼接成一个数组:
    1
    2
    3
    4
    let arr1 = [1, 2, 3]
          arr2 = [4, 5]
      let arr = arr1.concat(arr2)
      console.log(arr)//[1, 2, 3, 4, 5]

      

  13. Array.toString()

     此方法将数组转化为字符串:
    1
    2
    3
    let arr = [1, 2, 3, 4, 5];
       let str = arr.toString()
       console.log(str)// 1,2,3,4,5

      

  14. Array.join()

      此方法也是将数组转化为字符串:
      
    1
    2
    3
    4
    5
    6
    7
    let arr = [1, 2, 3, 4, 5];
       let str1 = arr.toString()
       let str2 = arr.toString(',')
       let str3 = arr.toString('##')
       console.log(str1)// 12345
       console.log(str2)// 1,2,3,4,5
       console.log(str3)// 1##2##3##4##5

      

    通过例子可以看出和toString的区别,可以设置元素之间的间隔~ 

  15.Array.splice(开始位置, 删除的个数,元素)

       万能方法,可以实现增删改:
     
1
2
3
4
5
6
7
let arr = [1, 2, 3, 4, 5];
     let arr1 = arr.splice(2, 0 'haha')
     let arr2 = arr.splice(2, 3)
     let arr1 = arr.splice(2, 1 'haha')
     console.log(arr1) //[1, 2, 'haha', 3, 4, 5]新增一个元素
     console.log(arr2) //[1, 2] 删除三个元素
     console.log(arr3) //[1, 2, 'haha', 4, 5] 替换一个元素

  


原网址:https://www.cnblogs.com/jinzhou/p/9072614.html
   

js中数组常用方法总结的更多相关文章

  1. js中数组常用方法

    1.Array.push() 此方法是在数组的后面添加新加元素,此方法改变了数组的长度: var aa=[1,2,3]; var bb=aa.push(4,5); console.log(bb)    ...

  2. js中数组去重的几种方法

    js中数组去重的几种方法         1.遍历数组,一一比较,比较到相同的就删除后面的                 function unique(arr){                 ...

  3. javascript中数组常用方法总结

    原文:javascript中数组常用方法总结 在javascript的基础编程中,数组是我们最常遇到的,那么数组的一些常用方法也是我们必须要掌握的,下面我们总结一下数组中常用的方法. toString ...

  4. JavaScript -- 时光流逝(二):js中数组的方法

    JavaScript -- 知识点回顾篇(二):js中数组的方法 1. 数组 (1)定义数组,数组赋值 <script type="text/javascript"> ...

  5. php和js中数组的总结

      php中数组的表示方法:array()或者[] js中数组的表示方法:new array()或者[] 一.php中初始化命名数组 在PHP中声明数组的方式主要有两种:一是应用array()函数声明 ...

  6. JS中数组的介绍

    一.数组: 一组数据的集合: 二.JS中数组的特点: 1.数组定义时无需指定数据类型: 2.数组定义时可以无需指定数组长度: 3.数组可以存储任何类型的数据: 4.一般是相同的数据类型: 三.数组的创 ...

  7. js中数组增删查改unshift、push、pop、shift、slice、indexOf、concat、join

    js中数组增删查改unshift.push.pop.shift.slice.indexOf.concat.join

  8. js中数组如何使用

    js中数组如何使用 一.总结 一句话总结:new Array()和[]两种方法都可以创建数组. 二.js中创建数组,并往数组里添加元素 数组的创建 var arrayObj = new Array() ...

  9. js中数组方法大全

    js数组方法大全 一:前言 我们在学到js中数组的时候,我们会接触到js中数组的一些方法,这些方法对我们来说,可以很遍历的达到我们想要的结果,但是因为方法比较多,有些方法也不常用,可能会过一段时间就会 ...

随机推荐

  1. asp.netmvc部署到linux(centos)

    介绍将asp.netmvc项目部署到centos系统. 开发工具:win10+vs2017+.NetFramework4.6.1+Vmware14+centos 1.安装Jexus 这里使用独立版(专 ...

  2. 面试北京XX数通总结

    软件架构师何志丹 1             总括 1.1     面试时间 2019年1月21号. 1.2     公司概况 员工近20人,其中开发人员6人,全部objectarx(C++),全部老 ...

  3. 一个通过GINA拦截 盗窃登陆口令的病毒分析

    病毒行为: 1\将资源中的DLL释放到当前目录下 2\设置注册表,将GINA DLL设置为上一步中释放的DLL DLL行为: 1\在DLL被进程装载时, 装载正常的msgina.dll, 并保存句柄, ...

  4. java编写ID3决策树

    说明:每个样本都会装入Data样本对象,决策树生成算法接收的是一个Array<Data>样本列表,所以构建测试数据时也要符合格式,最后生成的决策树是树的根节点,通过里面提供的showTre ...

  5. 蓝图Blueprint

    ---恢复内容开始--- 蓝图: flask模块化处理操作和URL的方式 作用: 将不同的功能模块化,实现模块化应用 构建大型应用 优化项目结构 使用步骤 创建蓝图对象 对蓝图对象进行操作(注册路由; ...

  6. ceph版本号

    概述 第一个 Ceph 版本是 0.1 ,要回溯到 2008 年 1 月.多年来,版本号方案一直没变,直到 2015 年 4 月 0.94.1 ( Hammer 的第一个修正版)发布后,为了避免 0. ...

  7. Oracle 使用序列实现自增列 及重置序列

    序列是oracle用来生产一组等间隔的数值.序列是递增,而且连续的.oracle主键没有自增类型,所以一般使用序列产生的值作为某张表的主键,实现主键自增.序列的编号不是在插入记录的时候自动生成的,必须 ...

  8. R语言RODBC数据库操作

    最近准备做一个股票的数据库,用R语言来获取数据,然后存在SQL Sever 2016 express 里面,虽然前面接触过一些操作,但是还是很不熟悉,现在数据已经能获取到了,是时候好好学习一下怎么用R ...

  9. springboot使用redisTemplate遇到的问题

    概述 最近工作中新构建了一个项目,用的springboot,由于项目中要使用各种各样的缓存,就使用了spring-data-redis,这个东西比我想象中要难使用的多啊,而且我还遇到个问题,就是在用R ...

  10. 转载: http状态码

    消息   这一类型的状态码,代表请求已被接受,需要继续处理.这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束.由于 HTTP/1.0 协议中没有定义任何 1xx 状态码,所以除非在 ...