总结几个对象转数组的方法

目标效果:

obj = { 0: 'a', 1: 'b', 2: 'c' } => ayy=['a','b','c']

1、Array.from(object)

注: 
1️⃣ object中必须有length属性,返回的数组长度取决于length长度 
2️⃣ key 值必须是数值

2、Object.values(object)

注:与第一种不同的是不需要length属性,返回一个对象所有可枚举属性值

返回数组的成员顺序:

const obj = { 100: 'a', 2: 'b', 7: 'c' };  
Object.values(obj)  
// ["b", "c", "a"] 

3、Object.keys(object) 

注:返回一个对象的自身可枚举属性组成的数组,数组中属性名的排列顺序和使用 for…in 循环遍历该对象时返回的顺序一致

4、Object.entries(object)

注:返回一个给定对象自身可枚举属性的键值对数组

const obj = { foo: 'bar', baz: 42 }; 
console.log(Object.entries(obj)); // [ ['foo', 'bar'], ['baz', 42] ]


5、使用 for…in…构建函数

function getObjectKeys(object) {
  let keys = []
  for(let property in object)
    keys.push(property)
    return keys
}
function getObjectValues(object) {
  let values = []
  for(let property in object)
    values.push(object[property])
    return values
}


--------------------- 
作者:三七二十几 
来源:CSDN 
原文:https://blog.csdn.net/weixin_41534645/article/details/80379243 
版权声明:本文为博主原创文章,转载请附上博文链接!

发布了18 篇原创文章 · 获赞 9 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/xueyue616/article/details/91791939