【发布时间】:2020-07-23 22:22:23
【问题描述】:
我有这个对象数组:
columnData=[
{Address: "1 fake st"},
{Application: "bts sport"},
{Description: "good"},
{Issue Date: "2012-08-09"},
{Status: "active"},
{Unit: null}
]
然后我想使用计算属性将一些 columnData 元素分配给新的对象数组,新数组应如下所示:
newData= [
{
label: "Address",
value: "1 fake st"
},
{
label: "Descripttion",
value: "good"
},
{
label: "Unit",
value: null
}
]
我试过这段代码,但它不起作用:
computed:{
newData() {
return [
{
label: Object.keys(this.columnData[0]),
value: Object.values(this.columnData[0])
},
{
label: Object.keys(this.columnData[2]),
value: Object.values(this.columnData[2])
},
{
label: Object.keys(this.columnData[5]),
value: Object.values(this.columnData[5])
}
];
}
}
如何按照我希望使用计算属性的方式创建 newData 数组?
【问题讨论】:
-
如果原始对象之一包含多个属性,预期的输出是什么?还是没有属性?还是保证每个对象只包含一个属性?另外,您如何确定输入中的哪些对象包含在输出中?
-
我的原始对象保证是
columnData的样子 -
Object.keys(this.columnData[0])返回一个数组,可能你喜欢做的是Object.keys(this.columnData[0])[0];其他值也有同样的问题。
标签: javascript arrays vue.js key key-value