c++ 删除数组元素_第20节 数组的操作及遍历-Web前端开发之Javascript-王唯

本文介绍了C++中数组的操作,包括concat()、slice()和splice()方法的使用,以及delete运算符删除数组元素的方式。还探讨了数组元素的位置方法indexOf()和lastIndexOf(),以及遍历数组的常见方法。内容适用于Web前端开发中的Javascript学习。
摘要由CSDN通过智能技术生成

本内容是《Web前端开发之Javascript视频》的课件,请配合大师哥《Javascript》视频课程学习。

数组的操作:

concat()方法:

基于当前数组,将多个元素连接一起成为新的数组并返回;新数组中的元素按连接时的顺序排列。(具体来说,这个方法会先创建当前数组一个副本,然后将接收到的参数添加到这个副本的末尾,最后返回新构建的数组。当需要合并多个数组时,此方法比较方便);

语法:数组名.concat( [ item1, [ item2, [ item3 , […, [ itemN ] ] ] ] ] );

item:可选项,可以是数组对象也可以是单个数组元素,或者是其它对象;

var arr = [1,2];arr = arr.concat();arr = arr.concat(3,4);arr = arr.concat(3,[4,5]);arr = arr.concat([3,4],[5,6]);arr = arr.concat([3,4],[5,6,[7,8]]);console.log(arr);

concat()不会递归扁平化数组的数组,也不会修改原来的数组;当没有给concat()方法传递参数的情况下,它只是复制当前数组并返回副本。

slice()方法:

能够基于当前数组中的一个或多个项创建一个新数组;

语法:slice(start [, end]);

其接受一或两个参数,即要返回项的起始和结束位置;在只有start一个参数的情况下,slice()方法返回从该位置开始到当前数组末尾的所有项;如果两个参数,该方法返回起始和结束位置之间的项,但不包括结束位置的项;

其不会影响原有数组;如:

var colors=["red","green","blue","yellow","purple"];var c = colors.slice(1);c = colors.slice(1,4);c = colors.slice(1,-2);c = colors.slice(-4,-2);c = colors.slice(3,1);console.log(colors);console.log(c);

如果slice()方法的参数中有一个负数,则用数组长度加上该数来确定相应的位置;(如,在一个包含5项的数组上调用 slice(-2,-1)与调用slice(3,4)得到的结果相同;)

如果结束位置小于起始位置,则返回空数组。

splice()方法:

可以删除、替换或插入数组元素,是最强大的数组方法,有很多种用法;

具体作用是,从一个数组中移除一个或多个元素;剩下的元素组成一个数组,移除的元素组成另一个新数组并返回;同时,原数组可以在移除的开始位置处顺带插入一个或多个新元素,达到修改替换数组元素的目的;

语法:数组名. splice( start, deleteCount, [ item1 [, item2 [ , . . . [ , itemN ] ] ] ] );

start:必选项,表示从数组中剪切的起始位置下标索引号。

deleteCount:必选项,表示将从数组中切取的元素的个数。

item:可选项,表示切取时插入原数组切入点开始处的一个或多个元素;

  • 1)删除:可以删除任意数量的项,只需要指定2个参数,如:splice(0,2);// 删除数组中前两项;如果只指定1个参数,则删除从该位置到结尾的元素;
  • 2)插入:可以向指定位置插入任意数量的项,需要指定3个参数,其中第二个参数为0;如果要插入多个项,可再传入第4第5等任意多个项,如:splice(2,0,”red”,”green”);
  • 3)替换:可以向指定位置删除任意数量的项,同时插入任意数量的项,需要指定至少3个参数;插入的项数不必与删除的项数相等,如:splice(2,1,”red”,”green”);

splice()方法始终会返回一个数组,该数组中包含从原始数组中删除的项(如果没有删除任何项,则返回一个空数组);

var a = [1,2,3,4,5,6,7,8];// var b = a.splice(4);// var b = a.splice(1,4);// var b = a.splice();// var b = a.splice(1,0,'a','b');// var b = a.splice(1,4,'a','b');var b = a.splice(1,4,['a','b']);console.log(a);console.log(b);

区别于concat(),splice()会插入数组本身而非数组的元素;

第一个参数可以接受负数,如果为负数,则

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值