Javascript将数组中对象的属性转换为字符串
Javascript turn property of objects in array into a string
我有一个对象数组,它们都是同一类的实例,如下所示:
class Foo {
constructor(bar){
this.bar = bar;
}
}
var myArr = [new Foo("1"), new Foo("2"), new Foo("3"), new Foo("4")];
我希望能够将数组中每个对象的bar属性连接到一个逗号分隔的字符串中。
是否可以对对象的属性调用.join方法?如果不是,最有效的方法是什么?
var result = "";
for (var i = 0; i < myArr.length; i++){
result += myArr[i].bar+","
}
或者还有别的办法吗?
您可以使用Array.prototype.map
:
var myArr = [
{bar: "Joe", age: 22},
{bar: "Kevin", age: 24},
{bar: "Peter", age: 21}
];
console.log(myArr.map(function(x) { return x.bar; }).join(','));
您可以使用Array.prototype.reduce
:
var myArr = [
{bar: "Joe", age: 22},
{bar: "Kevin", age: 24},
{bar: "Peter", age: 21}
];
console.log(myArr.reduce(function(acc, el) {
if(!acc) return el.bar;
return acc + ', ' + el.bar;
}, ''));
使用Array.reduce
函数的替代解决方案:
var barValues = myArr.reduce((a,b) => (a['bar'] || a) + "," + b['bar']);
console.log(barValues); // "1,2,3,4"
相关文章:
- 手柄'img'单击事件并插入'alt'使用jQuery将属性转换为文本框
- Javascript将数组中对象的属性转换为字符串
- 如何将返回一串数字的 JSON 属性转换为日期
- undescoreJS - 将对象属性转换为数组
- 如何在JavaScript中将JSP请求属性转换为字符串并将其分配给对象
- 如何将字符串中的链式属性转换为javascript中的变量
- 如何将外部 css 属性转换为内联属性
- JS - 将字符串从数据属性转换为对象
- 错误:缺少类属性转换
- 将 camelCaseWords 从数据属性转换为“骆驼案例词”
- 在 TypeScript 中从 DOM 属性转换为枚举
- Javascript将NaN字符串属性转换为可用数字
- Html将5个数据属性转换为jquery插件选项格式
- Node.js将对象的所有属性转换为字符串
- 可以将对象属性转换为自己的对象
- 将某些observableArray对象属性转换为observable
- 将HTML名称属性转换为Javascript对象
- 用逗号分隔的属性转换为带下划线或长划线的实际属性
- 将用户提交的外部链接属性转换为在新窗口中打开
- 如何从图像中复制URL's src属性转换为jQuery中的href属性