簡體   English   中英

Javascript - 使用動態名稱refereed訪問變量的值

[英]Javascript - access the value of variables with dynamic name refereed

這里的Noob問題:)有沒有辦法在javascript中訪問動態引用的變量名的值?

我嘗試了什么:

var var1 = "foo";
var var2 = "bar";
var i = 1;
i++; 

console.log(`var${i}`);  // give me "var2"
console.log(typeof `var${i}`); // == srting` 

我想訪問值“foo”或“bar”,但我錯過了一些東西,因為我只得到變量的名稱?

關於堆棧的第一個問題,如果它不完美,請告訴我我會添加細節,謝謝!

如果變量是在全局范圍內定義的,則它們是窗口對象的屬性。

 var var1 = "foo"; var var2 = "bar"; var i = 1; i++; console.log(window[`var${i}`]); 

可能更好的方法是創建數據對象並將變量存儲為其屬性。

 var data = {}; data.var1 = "foo"; data.var2 = "bar"; var i = 1; i++; console.log(data[`var${i}`]); 

您可以使用eval執行動態代碼。

 var var1 = "foo"; var var2 = "bar"; var i = 1; i++; console.log(eval('(var' + i + ')')); // give me "var2" console.log(eval('(typeof(var' + i + '))')); // == srting` 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM