簡體   English   中英

如何通過鍵值獲取特定的json數據值

[英]How can I get specific json data value via the key value

假設我在本地存儲中有以下json

top: [ {"id","one","name":"java"},
       {"id","two","name","javascript"},
       {"id","three","name","jquery"]
     ]

這里的問題是如何僅通過使用名稱值來獲取ID? 例如,如果我想獲取id值"two" ,則需要能夠使用"javascript"進行查詢,然后達到值"two" 有沒有辦法解決上述問題?

讓我們將輸入轉換為對象,然后將其作為屬性訪問

 var input = [{ "id":"one", "name":"java" }, { "id":"two", "name":"javascript" }, { "id":"three", "name":"jquery" }]; var result = input.reduce((acc, b) => { acc[b.name] = b.id; return acc; }, {}); console.log(result['javascript']); 

嘗試使用Array#find您的json無效。您可以在下面更改格式

 var toper = [{ "id": "one", "name": "java", }, { "id": "two", "name": "javascript", }, { "id": "three", "name": "jquery", } ] function find_id(str) { return toper.find((a) => { if (a.name == str.trim()) { return a } }).id } console.log(find_id('javascript')) 

您的JSON有一些拼寫錯誤。 應該像上面的Tai的例子一樣。

要從本地存儲中檢索它(作為文本)並使用它(作為json對象):

var myJson = JSON.parse(myText)

然后:

for (var i=0 ; i<myJson.length ; i++) {
    if myJson[i].name == "javascript" {
        var a = myJson[i].id;
        console.log(a);
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM