2015-09-28 92 views
1

我有一個jQuery對象我在jquery中查詢並無法使用存儲在jquery變量中的值。例如:使用jQuery變量查詢json對象

$tops= json.tops 
$color = "blue"; 

如果我console.log($tops.blue);我得到預期的結果。但是,如果我console.log($tops.$color);我得到'undefined'

任何人都可以解釋我做錯了什麼/有什麼不同?

+2

你可以發佈你已經嘗試了代碼? – Jesse

+0

是否解析過'json'?當你鍵入'typeof json'時返回什麼? – Dom

+0

你爲什麼期望'$ tops.blue'與'$ tops。$ color'相同?你還沒有分配'$ tops。$ color'。 –

回答

1

從你的console.log的例子,我的想法是,你要找的是$tops[$color]$tops.$color將尋找'$color'的財產。

從您的代碼示例中,我認爲您需要$color = 'blue'(藍色是一個字符串),因爲目前它將是名爲blue的變量的值。

而且,也許這將是有益的:JavaScript property access: dot notation vs. brackets?

+0

我編輯了我的問題來包含「」,我把它們遺漏了,但它們都在我的代碼中。我不會使用括號,因爲我不訪問數組 –

+0

@TatianaFrank如果你看看我包含的鏈接,你會看到其中一個用途是'使用變量選擇屬性'。數組訪問表示法將對象視爲字典,基本上是'obj.x == obj ['x']'。 – ryachza

+0

啊,這是有道理的。謝謝! –