![](/img/trans.png)
[英]AngularJS Get all values from an array in Javascript and push it to another array
[英]get values from object and push into array javascript
我想从object获取值并将其保存到数组中......这就是我的对象的结构。
0: {name: "John Deo", age: 45, gender: "male"}
1: {name: "Mary Jeo", age: 54, gender: "female"}
2: {name: "Saly Meo", age: 55, gender: "female"}
但我正在寻找这样的东西。
0: ["John Deo", 45, "male"]
1: ["Mary Jeo", 54, "female"]
2: ["Saly Meo", 55, "female"]
这是我被卡住的地方。
for(let i in data){
_.map(data[i], value =>{
console.log(value)
})
}
您可以使用函数Array.prototype.map
迭代数据并在每个对象上运行Object.values
函数以将其值提取为数组。
const data = [ {name: "John Deo", age: 45, gender: "male"}, {name: "Mary Jeo", age: 54, gender: "female"}, {name: "Saly Meo", age: 55, gender: "female"} ]; result = data.map(Object.values); console.log(result);
请注意,以这种方式迭代对象的属性可能会以任意顺序返回,因此如果您需要确保顺序,则应使用自定义函数来提取值(使用ES6解构尤其容易):
const data = [ {name: "John Deo", age: 45, gender: "male"}, {name: "Mary Jeo", age: 54, gender: "female"}, {name: "Saly Meo", age: 55, gender: "female"} ]; const extractValues = ({name, age, gender}) => [name, age, gender]; result = data.map(extractValues); console.log(result);
尝试这个:
data.map(obj => Object.values(obj))
另一种选择是使用Object.values()方法。
var obj = {name: "John Deo", age: 45, gender: "male"};
console.log(Object.values(obj));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.