我创建了一个对象数组,如下所示:
for(var i =0; i < this.test.length; i ++){
var header = this.test[i].hdr;
var insertData = [];
switch(header){
case 'date':
insertData = {date: "date"};
break;
case 'name':
insertData = {name: "name"};
break;
case 'age':
insertData = {age: "age"};
break;
case 'add':
insertData = {add: "add"};
break;
}
this.hdrtxt.push(insertData);
}
现在,当我尝试获取对象的键时,我使用了这个:
Object.keys(this.hdrtxt);
结果是:
(4) ["0", "1", "2", "3"]
但我想要的输出是这样的:
(4) ["date", "name", "age", "add"]
抱歉,我是新手。我怎样才能实现我的目标?
最佳答案
您可以使用Object.keys
与 Object.assign
并将数据
分散到一个对象中以获取所有键:
const data = [{ date: "date" }, { name: "name" }, { age: "age" }, { add: "add" }]
const result = Object.keys(Object.assign({}, ...data))
console.log(result)
造成这种情况的主要原因是您正在处理一个数组,而 Object.keys
期望一个对象能够工作。
关于javascript - 如何在 Vue.js 中获取对象数组中的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53662113/