0
嗨,我只是不能找出這一個。窗口[「object.something」]不工作的對象javascript
我需要使用window["evaluate string into js object"]
,因爲我正在將Web應用程序轉換爲Chrome操作系統Chrome應用程序,並且他們不允許您使用eval()
來執行其內容安全策略。
我的問題是,對於基本的可變因素是罰款,例如:
var a = "foo";
var b = window["a"];
這將會把「富」到b中沒有任何問題。但只要我有一個對象(包括全局或局部),這是行不通的,因此,如果「A」是一個對象的代碼想是這樣的:
a.test = "foo";
var b = window["a.test"];
這是行不通的。
這是有原因嗎?我似乎無法找到關於window[]
的很多信息,所以想知道是否有任何見解,或者至少可以指向正確的方向看。
感謝
您正試圖查看窗口屬性的屬性,您將被解釋爲試圖罰款屬性(*作爲字符串*)'「a.test」'。你可以做'window [「a」] test'嗎?我也不明白爲什麼'eval'會在這裏幫助。 –
'window [「a」] [「test」]'是您需要訪問它的方式。 – epascarello
http://stackoverflow.com/questions/6393943/convert-javascript-string-in-dot-notation-into-an-object-reference – epascarello