2013-03-29 52 views
-2

有人能指引我朝着正確的方向嗎?如何將引用變量傳遞給JavaScript中的對象文字?我使用的是Backbone.js,具體而言,我使用的是collections.where方法。所以,我有話如下:對象文字和動態變量

var temp = customers.where({num: 10}); 

然而,如果什麼人有一個像變種X變量(即改變),他們想要說些什麼類似如下:

var temp = customers.where({num: x}); 

的JavaScript不會我知道,讓你這樣做。但是它是如何完成的?或者你如何解決它?

+0

你嘗試了嗎?這工作:'var x = 10; var temp = customers.where({num:x});'。也許對你想要完成的事情更具體。 –

+0

JavaScript會讓你做到這一點。它是不是評估表達式的*屬性名稱*(與*值*相對)。 – 2013-03-30 00:08:55

+0

@PaulHoenecke http://stackoverflow.com/questions/15710923/trouble-referencing-variable-in-collections-where-method-within-render-function - 請你可以看看該鏈接上的代碼。我認爲這可能是一個封閉問題,如下所示。我很新的javascript – user2225631

回答

3

創建這樣一個封閉在x

var x = 10; 
var filter = function() { return customers.where({num: x}); }; 

var temp = filter(); // uses x = 10 

x = 20; 
temp = filter(); // uses x = 20 
+0

感謝您的反饋。我將在明天更充分地研究關閉 – user2225631