[英]Get the value of an object with an unknown single key in JS
如何獲得具有未知單鍵的對象的值?
例:
var obj = {dbm: -45}
我想在不知道其鍵的情況下獲得-45值。
我知道我可以遍歷對象鍵(始終是一個)。
for (var key in objects) {
var value = objects[key];
}
但是我想知道是否有更清潔的解決方案?
Object.keys可能是一種解決方案:
Object.keys({ dbm: -45}); // ["dbm"]
for-in和Object.keys之間的區別在於,Object.keys返回所有自己的鍵名,而for-in可用於遍歷對象的所有自己的和繼承的鍵名。
正如James Brierley在下面評論的那樣,您可以通過以下方式分配對象的未知屬性:
var obj = { dbm:-45 };
var unkownKey = Object.keys(obj)[0];
obj[unkownKey] = 52;
但是您必須記住,分配Object.keys以某種順序返回鍵名的屬性可能容易出錯。
現在有一個新選項: Object.values
。 因此,如果您知道該對象將只有一個屬性:
const array = Object.values(obj)[0];
現場示例:
const json = '{"EXAMPLE": [ "example1","example2","example3","example4" ]}'; const obj = JSON.parse(json); const array = Object.values(obj)[0]; console.log(array);
如果還需要知道屬性的名稱,則可以使用Object.entries
和銷毀方法:
const [name, array] = Object.entries(obj)[0];
現場示例:
const json = '{"EXAMPLE": [ "example1","example2","example3","example4" ]}'; const obj = JSON.parse(json); const [name, array] = Object.entries(obj)[0]; console.log(name); console.log(array);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.