如何在Vue.js中获取对象数组中的键

时间:2018-12-07 01:42:26

标签: javascript arrays object

我创建了一个对象数组,就像这样:

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"]

对不起,我对此很陌生。我如何实现目标?

2 个答案:

答案 0 :(得分:3)

您可以将Object.keysObject.assign结合使用,并将data分散到一个对象中以获取所有键:

const data = [{ date: "date" }, { name: "name" }, { age: "age" }, { add: "add" }]

const result = Object.keys(Object.assign({}, ...data))

console.log(result)

这样做的主要原因是由于您正在处理数组,并且Object.keys期望对象可以工作。

答案 1 :(得分:0)

首先,可以通过简化操作轻松完成

text = fileread('filename.txt');