博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
号外!号外!超全的数组方法,不看后悔啊!!
阅读量:6721 次
发布时间:2019-06-25

本文共 1804 字,大约阅读时间需要 6 分钟。

Array对象

连接两个或更多的数组,并返回结果。
把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。
删除并返回数组的最后一个元素
向数组的末尾添加一个或更多元素,并返回新的长度。
颠倒数组中元素的顺序。
删除并返回数组的第一个元素
从某个已有的数组返回选定的元素
对数组的元素进行排序
删除元素,并向数组添加新元素。
返回该对象的源代码。
把数组转换为字符串,并返回结果。
把数组转换为本地数组,并返回结果。
向数组的开头添加一个或更多元素,并返回新的长度。
返回数组对象的原始值

函数方法

1,forEach() (es5)

forEach,for in , for,for of的区别

let arr = [1,2,3,4,6];arr.w = 100 //数组的私有属性arr.forEach((item)=>{ //不能return,必会执行完。    console.log(item)})for(let val of arr){ //支持return 并且是值of数组(不能遍历对象)    console.log(val)}for(let key in arr){//key 会变成字符串,包括数据的私有属性也可以打印出来console.log( typeof key)}复制代码

2,filter() 过滤

//filter 过滤)   是否操作原数组:不会 ;    这个方法返回结果:过滤后的新数组  ;  回调函数的返回结果:true,这一项放到新数组 let aaa = arr.filter(item=>{    return item<5})console.log(aaa)复制代码

3,map() 映射

复制代码
//map 映射  降原有的数组映射成一个新数组  )不操作原数组;返回新数组;回调函数中返回什么就是什么// 要映射一个结果为:
  • 1
  • 2
  • 3
  • 4
  • 6
  • let map = arr.map(item=>{ return `
  • ${item}
  • ` //``是es6中的模板字符串,遇到变量用${}取值})console.log(map.join(''))复制代码

    4,some()

    //some)同find一样只不过返回的不是找到的那一项,返回的是true;也是找到后停止,找不到就是false复制代码

    5,every()

    //every)找到false后停止返回false;复制代码

    6,reduce()

    // reduce 收敛  :4个参数,返回的是叠加后的结果,原数组不变。回调函数返回的结果://prev代表的是数组的第一项,next是数组的第二项//第二次的prev是undefined,next是数组的第三项let sum1 = arr.reduce(function (prev,next,index,item) {   console.log(arguments)    console.log(prev,next)    return 100 //本次的返回值会作为下一次的prev})console.log(sum1)let sum2 = [{price:20,count:2},{price:20,count:3},{price:20,count:4}].reduce(function(prev,next){    //0+40    //40+60    //100+80    return prev+next.price*next.count},0)  //这可以指定第一次的prev是0,因为每次返回的是值所以这样最方便console.log(sum2)复制代码

    7,includes()

    //includes   ) 返回是Booleanlet arr3 = [1,2,55,555]console.log(arr3.includes(5))复制代码

    8,find()

    //find ) 返回找到的那一项,不会改变数组,回调函数中返回true表示找到了,然后停止循环,找不到返回undefined;let find = arr3.find(function (item,index) {    return item.toString().indexOf(5)>-1})console.log(find)复制代码

    转载地址:http://lyjmo.baihongyu.com/

    你可能感兴趣的文章
    全面解析Java注解
    查看>>
    批量将Access 2000 的mdb文件导入到SqlServer 2005中
    查看>>
    基础指令的使用篇3 Linux版
    查看>>
    Event ID: 36888 error state is 1203 胡杨的博客
    查看>>
    关照一下IE6这个垃圾png图片背景不透明的bug
    查看>>
    btrfs文件系统
    查看>>
    找出Win7 C盘空间被占用的罪魁祸首
    查看>>
    CCNA之网络互连
    查看>>
    spring读取.properties文件
    查看>>
    Android学习 之 Activity和Window之间的关系
    查看>>
    bash版2048
    查看>>
    find命令详解(一)
    查看>>
    firefox下调试wap网页的方法
    查看>>
    java.lang.Object
    查看>>
    c++判断和跳转语句
    查看>>
    Google Glass竞争对手现身,中法合资公司蓝斯特抢先推出增强现实智能眼镜(专业版),民用版2013年年初推出...
    查看>>
    nagios系列-----Redhat5.4下安装EPEL
    查看>>
    我的友情链接
    查看>>
    IOS使用MonkeyTalk自动化测试app的教程
    查看>>
    Python2.7 ConfigParser
    查看>>