concat()方法只是用当前数组重新创建一个新的数组,因此当前数组保持不变(colors数组不变)。 slice()方法 slice()方法:基于当前数组中的一个或多个项创建一个新数组。 slice()方法中可以有一个或者两个参数(代表数组的索引值,0,1,2……)。接收一个参数时:返回当前数组中从此参数位置开始到当前数组末尾间所有项。
concat()和slice()方法都不会影响原数组,会在原数组上构建出一个新数组。其中concat()方法在原数组末尾添加所传的数组项(简单点看有类似于push()方法),构建一个新数组;slice()方法可以从指定的位置开始删除指定的数组项,并且将删除的数组项构建成一个新数组。splice()方法就更强大了,可以对一个数组做删除、插...
版本1.0 只能接收一个参数 Array.prototype.concat=function(arr){varself=this;varnewArr=[];varlen1=self.length;varlen2=arr.length;varlen=len1+len2;for(vari=0;i<len;i++){if(i<len1){newArr[i]=self[i];}else{newArr[i]=arr[i-len1];}}returnnewArr;} 版本2.0 用了各种数组的方法, ...
concat 和 slice() concat作用是把两个数组链接起来组成一个新数组 新数组不会影响 组成它的两个原数组 3者是独立分开的个体 slice中文切片的意思 slice(开始,结束) 开始:是从0123...切 ,结束:是从倒数第一个开始切 (所以倒数第一个并不是0 ) 具体例子开下面 这是slice(0)复制的方法 slice()是切 、sp...
(2)concat()可以合并多个的数组,用逗号分隔多个数组 var newArray2 = carEnterprise.concat(carDetail,carDetail,carDetail); 1. 五、slice() 截取数组 slice()方法可以截取出一个从索引位置开始的新数组,方法参数为数组索引。 slice(startIndex)只有一个参数时,默认为开始索引,结束参数省略 ...
Array.prototype.delArr=function(n){// 删除数组中的元素个数// prototype 为在数组原型上添加一个delArr方法// n<0 则直接返回if(n<0){returnthis}else{returnthis.slice(0,n).concat(this.slice(n+1,this.length))}}// 下面测试一下这个方法可不可行vararr=[0,1,2,3,4,5];console.log(arr.de...
与slice()方法的区别: slice()方法可以从已有的数组中返回选定的元素。可提取字符串的某个部分,并以新的字符串返回被提取的部分。不能改变原始数组。返回新数组。 语法: array.slice(start, end) 1. 数组遍历 for循环 for/in循环处理稀疏数组 循环每次将一个可枚举的属性名(包括数组索引)赋值给循变量。不存在...
concat:连接两个数组形成一个新数组 变成字符串toString()和join() toString(),将数组变成字符串,分隔符是逗号,不会变; join(),将数组变成字符串,分隔符是括号内的值,可以变,默认是逗号;同时如果数组中元素是undefined或者null的话,会被处理位空字符串 ...
补充~数组的深拷贝 对于数组的拷贝复制而言,如果直接使用等于号=来进行拷贝复制,那只是浅拷贝,浅拷贝拷贝的是地址,所以源数组改变,拷贝的数组也会跟着改变 常见方式 slice concat ...拓展 JSON.parse(JSON.stringify()) let arr = ['孙悟空','猪八戒','沙和尚','唐僧'] // 方式一slice let newArr = arr...