学习目标:
学习内容:
方法:
总结:
示例代码如下:
this.list.push(newList)
//push() 在数组末端添加一条数据
console.log(this.list)
示例代码如下:
let newList = {
id:'4'
name1:'a4',
name2:'b4',
}
this.list.unshift(newList) //unshift()在数组头部添加一条数据
console.log(this.list)
- 3. splice()
含义: splice() 方法向/从数组指定位置添加/删除项目,然后返回被删除的项目。
使用方式:数组.splice(index,0,newList)
说明: 第一个参数为需要操作数据的下标,
第二个参数为操作添加/删除(0为添加,1为不操作,2为删除,3为删除多条数据),
第三个参数可选
示例代码如下:
let newList = {
id:time.id,
name1:time.name1,
name2:time.name2,
}
//第一个参数为需要操作数据的下标,第二个参数为操作添加/删除(0为添加,1为不操作,2为删除,3为删除多条数据),第三个参数可选
this.list.splice(index,0,newList)
console.log(this.list)
分析图如下所示:
第一种情形:传递一个参数
第二种情形:传递两个参数
第三种情形:传递的参数为负值
slice()传递的参数还可以是负值。当参数中有一个负值时,则用数组长度加上该数来确定相应的位置。比如传递的值是-3,数组的length为6,此时slice(-3)对应的就是slice(3)。或者可以从数组的末尾开始计算起,最末尾的是-1。
分析图如下所示:
特别要注意的点:
传递的第二个参数也可以是负数,而且还可以正数和负数混合使用。
特别注意:slice()传递的两个参数时,第一个参数和第二个参数位置相同或者第一个参数在第二个参数之后时,得到的新数组是一个空值(负值也是类似,但负值与数值长度之和再作对比)。
简言之,结束位置小于或等于开始位置,将返回一个空数组。
//示例代码如下:
let arrA = [1,2,3]
let arrB = [4,5,6]
arrA.concat(arrB) // 输出 1,2,3,4,5,6
let arrC = [7,8,9]
arrA.concat(arrB,arrC) // 输出 1,2,3,4,5,6,7,8,9
concat()方法:
含义:我们可以将其理解为合并数组。
原理:基于当前数组中的所有项创建一个新数组,即,concat()先给当前数组创建一个副本,然后将接收到的参数添加到这个副本(数组)的末尾,最后返回一个新的数组。
第一种情形:传递一个参数或多个参数
var arr = [`1`,'2','3'];
console.log(arr);
结果输出:
// ["1", "2", "3"]
var arr2 = arr.concat('4','5','6');
console.log(arr2);
结果输出
// ["1", "2", "3", "4", "5",'6']
第二种情形:
传递一个或多个数组
示例代码如下:
var arr = ["1","2",'3'];
console.log(arr);
结果输出
// ["1", "2",'3']
var arr2 = arr.concat(10,["4","5",'6'],["7","8","9"]);
console.log(arr2);
输出结果
// ["1", "2",'3',10, "4", "5", "6", "7", "8",'9']
第三种情形:
传递空值(也就是说没有传递参数)
示例代码如下:
var arr = [1,2,3];
console.log(arr); // [1, 2,3]
var arr2 = arr.concat();
console.log(arr2); // [1, 2,3]
总结:
此时它只是复制当前数组,并且返回一个副本。
**
总结: concat()方法是在数组的副本上进行操作并返回新构建的数组,并不会影响到原来的数组。
**
原文地址:https://blog.csdn.net/YHLSunshine/article/details/130272026
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_20852.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。