获取值并加入','
const users = [{
name: "Jon",
age: 34,
country: "ES"
}]
users.map(function(a){
for (let item in a) {
console.log(a[item])
}
})
//users.join(", ");
我想要返回Jon,34,ES
。
有什么建议吗?
答案 0 :(得分:6)
您可以使用Object.values和map:Objet.values返回对象中的值数组,并通过','将这些值连接到字符串。
const users = [{
name: "Jon",
age: 34,
country: "ES"
}];
var result = users.map(u => Object.values(u).join(','));
console.log(result);
答案 1 :(得分:5)
您可以使用 Object.values 来获取对象属性的数组,然后使用该数组的 join 方法从值中创建字符串:
var result = users.map(function (a) {
return Object.values(a).join(', ');
});
console.log(result[0]); // Jon, 34, ES
答案 2 :(得分:4)
您可以映射您的用户数组并加入每个用户词典的值。
users.map(user => Object.values(user).join(', '));
答案 3 :(得分:1)
cat /proc/self/maps
arrayOfStrings 将包含一个由对象组成的字符串数组。
供参考使用的方法:
答案 4 :(得分:0)
因为已经有很多解决方案可以使用,所以我想提供一个不同的解决方案。
喜欢你的人:
const users = [{
name: "Jon",
age: 34,
country: "ES"
}]
const results = users.map(function(a) {
const values = [];
for (let item in a) {
values.push(a[item]);
}
return values.join(", ");
})
console.log(results);

或者对于真正古老的浏览器支持(IE6 +),如下所示:
var users = [{
name: "Jon",
age: 34,
country: "ES"
}]
var results = [];
for (var i = 0; i < users.length; i++) {
var values = [];
for (let x in users[i]) {
values.push(users[i][x]);
}
results.push(values.join(", "));
}
console.log(results);
&#13;
无论如何,我更喜欢使用Arrow functions,Array.prototype.map和Object.values等现代解决方案,就像使用此主题中的其他人一样。