数组中常用的方法

0. 前言

在开发过程中会对数组进行操作,而方法很多,我在这里进行一些总结。


学霸.jpg

1. 简介

数组可以存储多个不同类型的数据。

2. 数组中常用的方法

一、 push

push(item1,item2...)
功能:在数组的末位添加一个或者多个元素
参数:要以添加的元素
返回值:添加数据后数组的长度

var arr1 = [1,2,3,4,5];
var ret1 = arr1.push(9);
console.log(arr1);//输出 [1, 2, 3, 4, 5, 9]
console.log(arr1.length);//输出 6
console.log(ret1);//输出 6

二、 unshift

unshift(item1,item2......)
功能:在数组的头添加一个或者多个元素
参数:要以添加的元素
返回值:添加数据后数组的长度

var arr2 = [1,2,3,4,5];
var ret2 = arr2.unshift(0);
console.log(arr2);//输出 [0, 1, 2, 3, 4, 5]
console.log(arr2.length);//输出 6
console.log(ret2);//输出 6

三、 pop

pop()
功能:在数组的末尾删除一个元素
参数:无
返回值:被删除的元素

var arr3 = [1,2,3,4,5];
var ret3 = arr3.pop();
console.log(arr3);//输出 [1, 2, 3, 4]
console.log(arr3.length);//输出 4
console.log(ret3);//输出 5

四、 shift

shift()
功能:在数组的头删除一个元素
参数:无
返回值:被删除的元素

var arr4 = [1,2,3,4,5];
var ret4 = arr4.shift();
console.log(arr4);//输出 [2, 3, 4, 5]
console.log(arr4.length);//输出 4
console.log(ret4);//输出 1

五、 join

join(str)
功能:将数组的元素用参数字符串拼接成一个新的字符串
参数:一个字符串
返回值:拼接的结果字符串

var arr5 = [1,2,3,4,5];
var ret5 = arr5.join("good");
console.log(arr5);//输出 [1, 2, 3, 4, 5]
console.log(arr5.length);//输出 5
console.log(ret5);//输出 1good2good3good4good5
console.log(typeof ret5);//输出 string

六、reverse

reverse()
功能:倒置数组
参数:无
返回值:倒置以后的数组

var arr6 = [1,2,3,4,5];
var ret6 = arr6.reverse();
console.log(arr6);//输出 [5, 4, 3, 2, 1]
console.log(arr6.length);//输出 5
console.log(ret6);//输出 [5, 4, 3, 2, 1]
console.log(typeof ret6);//输出 object

七、 slice

slice(starIndex,endIndex)
功能:在数组中从starIndex下标一直截取到endIndex下标之前
参数:开始与结束的下标
返回值:截取的数据数组
注意:不包含endIndex下标处的元素

var arr7 = [1,2,3,4,5,6,7,8,9,10];
var ret7 = arr7.slice(3,7);
console.log(ret7);//输出 [4, 5, 6, 7]

八、 splice

splice(下标,个数,item1,item2...)
功能:是在数组的中间添加或者删除一些元素
必选参数:下标、个数
可选参数:item1,item2...
添加方法的返回值:[ ] 空数组
添加:个数为0,从下标处开始添加可选参数中的元素
注意:如果下标大于了原数组的最大下标,都是在数组最后添加元素

var arr9 = [1,2,3,4,5];
var ret9 = arr9.splice(2,0,8,9);
console.log(arr9);//输出 [1,2,8,9,3,4,5]
console.log(ret9);//输出 [ ]
console.log(ret9.length);//输出 0
console.log(arr9.length);//输出 7

删除:不需要可选参数,从下标开始删除对应个数个元素
删除方法的返回值:删除的元素数组

var arr10 = [1,2,3,4,5,6,7,8,9,10];
var ret10 = arr10.splice(2,6)
console.log(arr10);//输出 [1, 2, 9, 10]
console.log(ret10);//输出 [3, 4, 5, 6, 7, 8]
console.log(ret10.length);// 6

九、 concat

concat(arr1,arr2...)
功能:将多个数组拼接成一个数组
参数:一个或者多个数组
返回值:拼接之后新的数组,新的数组元素是所有数组的元素

ar arr8 = [1,2,3];
var num8 = [4,5,6];
var str8 = [7,8,9];
var ret8 = num8.concat(arr8,str8);
console.log(ret8);//输出 [4, 5, 6, 1, 2, 3, 7, 8, 9]
console.log(arr8);//输出 [1, 2, 3]
console.log(num8);//输出 [4, 5, 6]
console.log(str8);//输出 [7, 8, 9]
console.log(ret8[1],[1]);//输出 5

十、 indexOf

indexOf(item)
功能:从数组的左侧开始查找对应第一次出现的参数元素的下标
参数:元素值
返回值:如果找到了对应的元素则返回该元素的下标值,否则返回-1

var arr11 = [1,2,3,3,4,5,3,6,7,8];
var ret11 = arr11.indexOf(9);
console.log(arr11);//输出 [1,2,3,3,4,5,3,6,7,8]
console.log(ret11);//输出 -1

十一、lastIndexOf

lastIndexOf(item)
功能:从数组的右侧开始查找对应第一次出现的参数元素的下标
参数:元素值
返回值:如果找到了对应的元素则返回该元素的下标值,否则返回-1

var arr12 = [1,2,3,3,4,5,3,6,7,8];
var ret12 = arr12.lastIndexOf(3);
console.log(arr12);//输出 [1,2,3,3,4,5,3,6,7,8]
console.log(ret12);//输出 6

3. 结束语

曾经有一份真诚的代码放在我面前,我没有珍惜,等我失去的时候我才后悔莫及,人世间最痛苦的事莫过于此。我要为森哥的真诚转载,发盆友圈,点赞,打赏!!!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,456评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,370评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,337评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,583评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,596评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,572评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,936评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,595评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,850评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,601评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,685评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,371评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,951评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,934评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,167评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,636评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,411评论 2 342

推荐阅读更多精彩内容