2016-11-21 22 views
0

好的,所以我有一個json結構如下。Javascript jquery json

基本上,我想要做的就是循環播放json文件,並在國家等於特定值時提取數據。

我相信這很容易,但我不能解決它。

{ 
"Site ID": 19955, 
"Hotels": "Ramada Salzburg City Centre", 
"Stadt": "Salzburg", 
"Country": "Austria", 
"Region": "Central & Eastern Europe", 
"Link DE": "", 
"Link EN": "", 
"Link TR": "", 
"Lat": 47.8137521, 
"Long": 13.044259, 
"Image": "/Salzburg.jpg" 
    } 
+0

安置自己的嘗試。 –

+0

「拉出數據」 - 請解釋這個短語,這是無意義的 –

+0

抱歉,將數據附加到一個li標籤爲ecxample – user3770540

回答

2

使用Array.prototype.filter

let austrianSites = sites.filter(site => site.Country === 'Austria') 
2

嘗試

for (var i = 0, len = structure.length; i < len; i++) { 
    if (structure[i].Country === someValue) { 
    // do something here 
    } 
} 
0

如何檢查是否JSON對象有一個屬性 「國家」,如果是的話那麼它輸出。希望能幫助到你!

var jsonObject = { 
 
"Site ID": 19955, 
 
"Hotels": "Ramada Salzburg City Centre", 
 
"Stadt": "Salzburg", 
 
"Country": "Austria", 
 
"Region": "Central & Eastern Europe", 
 
"Link DE": "", 
 
"Link EN": "", 
 
"Link TR": "", 
 
"Lat": 47.8137521, 
 
"Long": 13.044259, 
 
"Image": "wp-content/themes/wyndham-hotels/img/Salzburg.jpg" 
 
    } 
 

 
for(var i in jsonObject){ 
 
    if(jsonObject.hasOwnProperty("Country")){ 
 
    var x = jsonObject.Country; 
 
    } 
 
} 
 
document.write("The Country is: " + x);

0

請試試這個下面:

var places = [{ 
 
    "Site ID": 19955, 
 
    "Hotels": "Ramada Salzburg City Centre", 
 
    "Stadt": "Salzburg", 
 
    "Country": "Austria", 
 
    "Region": "Central & Eastern Europe", 
 
    "Link DE": "", 
 
    "Link EN": "", 
 
    "Link TR": "", 
 
    "Lat": 47.8137521, 
 
    "Long": 13.044259, 
 
    "Image": "/Salzburg.jpg" 
 
}, { 
 
    "Site ID": 1211, 
 
    "Hotels": "test", 
 
    "Stadt": "Salzburg", 
 
    "Country": "NZ", 
 
    "Region": "Central & Eastern Europe", 
 
    "Link DE": "", 
 
    "Link EN": "", 
 
    "Link TR": "", 
 
    "Lat": 47.8137521, 
 
    "Long": 13.044259, 
 
    "Image": "/Salzburg.jpg" 
 
}] 
 

 
var filtered = places.filter(function(p) { 
 
    return p.Country === "NZ"; 
 
}) 
 
console.log(filtered);