如何使用計算名稱在javascript中創建對象。創建一個包含計算名稱的javascript對象
上下文: 我正在製作一個附加組件,它將位於瀏覽器中,記錄每個訪問的主機名,創建一個以每個名稱命名的對象。我正在取代「。」與「_」 因此,例如在這個網站上它會創建一個stackoverflow_com對象。
這是可能的嗎?
另一個例子是 VAR 1 + 1(與變量實際上是2)
我知道括號內使這成爲可能與性的判定,但我不知道如何與這個名字本身做到這一點。
如何使用計算名稱在javascript中創建對象。創建一個包含計算名稱的javascript對象
上下文: 我正在製作一個附加組件,它將位於瀏覽器中,記錄每個訪問的主機名,創建一個以每個名稱命名的對象。我正在取代「。」與「_」 因此,例如在這個網站上它會創建一個stackoverflow_com對象。
這是可能的嗎?
另一個例子是 VAR 1 + 1(與變量實際上是2)
我知道括號內使這成爲可能與性的判定,但我不知道如何與這個名字本身做到這一點。
你需要將它們存儲在任何一個全局對象(如window
)或最好的選擇
var mySites = {};
mySites["stackoverflow_com"] = "foo"; // access as mySites.stackoverflow_com or mySites["stackoverflow_com"]
mySites[1+1] = "bar"; // access as mySites[2];
的對象更多信息:JavaScript property access: dot notation vs. brackets?
有趣的downvote。謹慎評論? – Jamiec
你爲什麼需要這個?你會在哪些上下文中調用這些變量的名字? – Kaiido
window ['yourObjName'] = yourObject,我認爲... – Ciprianis