Js添加数组,删除数组元素,合并,遍历,与Object互转
Posted Jason_ou2021
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Js添加数组,删除数组元素,合并,遍历,与Object互转相关的知识,希望对你有一定的参考价值。
1. 定义一个数组
let arr = ["Jason", "David", "Steven"];
2. 添加(push(), unshift(), splice()):
//push()方法可以将一个或多个新元素添加到数组的结尾,然后返回新数组
arr.push("Dobe");
console.log(arr)
//结果: ["Jason", "David", "Steven", "Dobe"]
//unshift()方法可以将一个或多个新元素添加到数组的开头,然后返回新数组
arr.unshift("Dobe");
//结果: ["Dobe", "Jason", "David", "Steven"]
//splice()方法可以将一个或多个新元素添加到数组的指定位置,插入位置的元素自动后移
arr.splice( 1, 0, "Dobe");
//结果: ["Jason", "David", "Dobe", "Steven"]
3. 删除元素 :
pop()方法
javascript中的Array对象提供了一个pop()栈方法用于弹出并返回数组中的最后一项,某种程度上可以当做删除用。
栈数据结构的访问规则是FILO(First In Last Out,先进后出),栈操作在栈顶添加项,从栈顶移除项,使用pop()方法,它能移除数组中的最后一项并返回该项,并且数组的长度减1。
var colors = ["red", "blue", "grey"];
var color = colors.pop();
console.log(color); // "grey"
console.log(colors.length); // 2
shift()队列方法
JavaScript中的Array对象提供了一个shift()队列方法用于弹出并返回数组中的第一项,某种程度上也可以当做删除用。
队列数据结构的访问规则是FIFO(First In First Out,先进先出),队列在列表的末端添加项,从列表的前端移除项,使用shift()方法,它能够移除数组中的第一个项并返回该项,并且数组的长度减1。
var colors = ["red", "blue", "grey"];
var color = colors.shift();
console.log(color); // "red"
console.log(colors.length); // 2
splice()操作方法
在JavaScript的Array对象中提供了一个splice()方法用于对数组进行特定的操作。splice()恐怕要算最强大的数组方法了,他的用法有很多种,在此只介绍删除数组元素的方法。在删除数组元素的时候,它可以删除任意数量的项,只需要指定2个参数:要删除的第一项的位置和要删除的项数。
var colors = ["red", "blue", "grey"];
var color = colors.splice(0, 1);
console.log(color); // "red"
console.log(colors); // ["blue", "grey"]
4. 合并
js的Array对象提供了一个叫concat()方法,连接两个或更多的数组,并返回结果。
var c = arr.concat(arr2);
5. 遍历
arr.forEach((item, key)=>
console.log(key, item)
)
6. 与Object互转
Array.from() 方法,用于数组的浅拷贝。就是将一个类数组对象或者可遍历对象转换成一个真正的数组。
let obj =
0: 'nihao',
1: 'haha',
2: 'gansha',
'length': 3
let arr = Array.from(obj)
console.log(arr);
Object.values(object)
tips:与第一种不同的是不需要length属性,返回一个对象所有可枚举属性值
这里简单说一下可枚举性。目前我还没理解这个可枚举性有什么用,大概意思就是
对象的每一个属性都有一个描述对象,用来描述和控制该属性的行为,用Object.getOwnPropertyDescriptor方法来获取该描述对象(用Object.defineProperty方法来设置)。
以后仔细研究之后会再好好写写这个可枚举性的!
let obj =
0: 'nihao',
1: 'haha',
2: 'gansha',
let arr = Object.values(obj)
console.log(arr);
Object.entries(object)
tips:返回一个给定对象自身可枚举属性的键值对数组
let obj =
0: 'nihao',
1: 'haha',
2: 'gansha',
let arr = Object.entries(obj)
console.log(arr);
以上是关于Js添加数组,删除数组元素,合并,遍历,与Object互转的主要内容,如果未能解决你的问题,请参考以下文章