资讯专栏INFORMATION COLUMN

前端 操作数组

jollywing / 1457人阅读

摘要:数组的操作常用方法向数组末尾增加项返回数组新长度直接改变原数组其他实现方法删除数组最后一项返回被删除项直接改变原数组其他实现方法删除数组第一项返回被删除的那一项直接改变原数组向数组开头增加项返回数组新长度原数组改变从索引开始,删除个元素

数组的操作 常用方法

push

向数组末尾增加项

返回数组新长度

直接改变原数组

其他实现方法:ary[ary.length]=1

pop

删除数组最后一项

返回被删除项

直接改变原数组

其他实现方法:ary.length--

shift

删除数组第一项

返回被删除的那一项

直接改变原数组

unshift

向数组开头增加项

返回数组新长度

原数组改变

splice

splice(n,m)从索引n开始,删除m个元素

splice(n)从索引n开始,删除到数组末尾

ary.splice(ary.length-1,0)==ary.pop()

splice(n,m,x)从索引n开始删除m个,用x替换删除项

splice(n,0,x)从索引n开始,删除0个(不删除),把x增加到n的前面

ary.splice(ary.length,0,x)==ary.push(x)

slice

slice(n,m)从索引n开始截取到m-1处

slice(0) 相当于赋值数组

concat 拼接

toString 转化为字符串

join(",") 按照固定符号把数组拆分

reverse 倒序数组

sort 排序数组(10以内)

sort(function(a,b){ return a-b })有小到大排序

sort(function(a,b){ return b-a })有大到小排序

forEach 遍历数组

var ary = [1, 2, 3];
ary.forEach( function ( item , index ) {} )
更好用的方法 例: var arr=[{name:1},{name:2},{name:3},{name:4}];

注意:还需要处理低版本IE的朋友请忽略以下方法

增 push

arr.push({name:5});
console.log(arr);//[ { name: 1 }, { name: 2 }, { name: 3 }, { name: 4 }, { name: 5 } ]

直接改变原数组

删(过滤) filter

var res=arr.filter(function (item, index) {
    return item.name!==1//过滤掉name为1的那一项
});
console.log(arr)//[ { name: 1 }, { name: 2 }, { name: 3 }, { name: 4 } ]
console.log(res)//[ { name: 2 }, { name: 3 }, { name: 4 } ]

返回的新数组才是过滤好的结果,原数组不变

改 map

var obj={name:100};
var res=arr.map(function (item, index) {
    if(item.name===1){
        return obj
    }
    return item;
});
console.log(arr);//[ { name: 1 }, { name: 2 }, { name: 3 }, { name: 4 } ]
console.log(res)//[ { name: 100 }, { name: 2 }, { name: 3 }, { name: 4 } ]

返回的新数组才是改变后的结果,原数组不变

查 find

var res=arr.find(function (item, index) {
    return item.name==1
})
console.log(arr)//[ { name: 1 }, { name: 2 }, { name: 3 }, { name: 4 } ]
console.log(res)//{ name: 1 }

返回结果才是要查找的项,原数组不变

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/91306.html

相关文章

  • js关键词变色,数组打乱,数组去重的实现和封装

    摘要:前言今天,把自己之前封装过的一部分小功能操作分享出现,都是一些可以说是比较常用,实现起来比较简单,代码又比较少的一些功能或操作,比如关键词变色,数组打乱,数组去重等。关键词变色这个功能很常见,特别是在搜索引擎执行搜索的时候。 1.前言 今天,把自己之前封装过的一部分小功能操作分享出现,都是一些可以说是比较常用,实现起来比较简单,代码又比较少的一些功能或操作,比如关键词变色,数组打乱,数...

    plokmju88 评论0 收藏0
  • CSS技巧 - 收藏集 - 掘金

    摘要:笔者作为一位,将工作以来用到的各种优秀资料神器及框架整理在此,毕竟好记性不如烂键盘,此前端知识点大百科全书前端掘金,,不定期更新技巧前端掘金技巧,偶尔更新。计算数组的极值技巧使你的更加专业前端掘金一个帮你提升技巧的收藏集。 CSS 样式画各种图形 - 前端 - 掘金下面是一些我在 CSS 中经常用到的图案,还有一些是在css-tricks看到的。记录一下,以后会用到。会持续更新… 一、...

    Jonathan Shieber 评论0 收藏0
  • CSS技巧 - 收藏集 - 掘金

    摘要:笔者作为一位,将工作以来用到的各种优秀资料神器及框架整理在此,毕竟好记性不如烂键盘,此前端知识点大百科全书前端掘金,,不定期更新技巧前端掘金技巧,偶尔更新。计算数组的极值技巧使你的更加专业前端掘金一个帮你提升技巧的收藏集。 CSS 样式画各种图形 - 前端 - 掘金下面是一些我在 CSS 中经常用到的图案,还有一些是在css-tricks看到的。记录一下,以后会用到。会持续更新… 一、...

    SHERlocked93 评论0 收藏0
  • 一次前端笔试总结

    摘要:另外,原题还有字数限制的,只有在字数小于并且结果正确时才可以满分。插入节点操作的可以使用和方法,随便用一个都行。但是,这题有两个限制条件优雅的方式前个元素。 1.有一个长度未知的数组a,如果它的长度为0就把数字1添加到数组里面,否则按照先进先出的队列规则让第一个元素出队。 分析:这道题主要是考核了数组的队列方法和栈方法。另外,原题还有字数限制的,只有在字数小于30并且结果正确时才可以满...

    jsdt 评论0 收藏0
  • 一次前端笔试总结

    摘要:另外,原题还有字数限制的,只有在字数小于并且结果正确时才可以满分。插入节点操作的可以使用和方法,随便用一个都行。但是,这题有两个限制条件优雅的方式前个元素。 1.有一个长度未知的数组a,如果它的长度为0就把数字1添加到数组里面,否则按照先进先出的队列规则让第一个元素出队。 分析:这道题主要是考核了数组的队列方法和栈方法。另外,原题还有字数限制的,只有在字数小于30并且结果正确时才可以满...

    GitChat 评论0 收藏0

发表评论

0条评论

jollywing

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<