【发布时间】:2018-08-10 13:11:56
【问题描述】:
我有一个代码可以生成这样的数组对象
[{
"invoiceNumber": "INV-056",
"invoiceDate": "2018-06-19",
"jobCardNumber": "JC-018",
"tax": 43323,
}, {
"invoiceNumber": "INV-056",
"invoiceDate": "2018-06-19",
"jobCardNumber": "JC-018",
"tax": 213,
"part@18%": 140.04,
"part@12%": 140.04,
"part@9%": 140.04,
"labour@18%": 140.04,
"offer@12%": 140.04,
"offer@9%": 140.04,
}, {
"invoiceNumber": "INV-056",
"invoiceDate": "2018-06-19",
"jobCardNumber": "JC-018",
"tax": 213,
},
{
"invoiceNumber": "INV-056",
"invoiceDate": "2018-06-19",
"jobCardNumber": "JC-018",
"tax": 213,
"part@9%": 140.04,
"labour@18%": 140.04,
"offer@12%": 140.04,
}
]
part@、labour@ 和 offer@ 键是动态的。我想要数组对象中的所有键。 我想要的结果是
[ '发票编号', '发票日期', '工作卡号', '税', '部分@18%', '部分@12%', '部分@9%', '劳动力@18%', '报价@12%', '报价@9%' ]
【问题讨论】:
-
Object.keys(myObj)
-
@jmargolisvt 它会返回 ['0', '1', '2', '3'] 我想要
['invoiceNumber','invoiceDate','jobCardNumber','tax','part@18%','part@12%','part@9%','labour@18%','offer@12%','offer@9%'] -
Object.keys()将为您提供任何对象的密钥。使用 object.keys 映射数组,展平结果,然后过滤掉唯一值。只是简单的数组操作。一旦您知道Object.keys(),这应该是微不足道的。你只得到 [0,1,2,3] 因为你 Object.key'ed 数组而不是数组中的对象。 -
你是说你想要一个所有出现的键的不同列表,不管它们出现在哪个对象中,或者它们出现了多少次?
-
@ADyson 是的。
标签: javascript arrays json