2013-03-15 64 views
0

從這樣的json源中選擇數據時,我需要使用一個變量。 json使用jquery getJSON()檢索。JS/Jquery - 在json選擇器中使用變量

"prices":[{ 
    "fanta":10, 
    "sprite":20, 
}] 

var beverage = fanta; 
var beverage_price = data.prices.beverage; 

現在beverage_price = 10

var beverage = sprite; 
var beverage_price = data.prices.beverage; 

現在beverage_price = 20

當我嘗試做這樣的例子中,腳本試圖查找價格的飲料進入。

非常感謝!

+1

使用方括號'data.prices [飲料]'。 – Matt 2013-03-15 12:36:18

+3

...'data.prices'是一個數組:'[0]'是必需的。 – VisioN 2013-03-15 12:36:58

+0

可能的重複[如何使用方括號表示法中的點表示法中的變量](http://stackoverflow.com/questions/7102704/how-to-use-variables-in-dot-notation-like-square-bracket-符號) – Matt 2013-03-15 12:37:02

回答

0

正如在評論中提到VisioNdata.prices是一個數組,你需要[0]包含價格{ "fanta":10, "sprite":20}

這裏訪問的第一個元素是工作例如:http://jsfiddle.net/2E8AH/

否則你可以讓data.prices一個對象如下:(如果它是在你的控制下)

var data = { 
    "prices" : 
     { 
      "fanta":10, 
      "sprite":20, 
     } 
}; 

並且可以在不[0]這樣訪問:http://jsfiddle.net/Y8KtT/1/

+0

謝謝!你的第二個例子完全像我需要的一樣! – Nesvik 2013-03-15 21:11:02

1

您可以訪問它想:

var beverage = 'fanta'; 
var beverage_price = data.prices[0][beverage];