這個問題在這里已經有了答案: 有沒有辦法使用包含變數名稱的字串訪問 javascript 變數? (4 個回答) 如何使用包含變數名稱的字串來參考變數? (7 個回答) 在 JavaScript 中通過名稱字串動態獲取全域變數 6 個回答 9 天前關閉。
我見過許多其他類似的問題,但沒有一個對我的情況有幫助,因此我不覺得我的問題是重復的。關于這個案例的所有問題都試圖給字串變數附加一個新的“含義”,而我已經有了這些變數,只是想使用一個字串來能夠訪問那些預先存在的變數。
我在 JS 中很少有帶有 ID 的 div 和一些字典,它們的名稱與這些 ID 相同。我想獲取這些作為字串回傳的 ID,并將它們用作變數來訪問這些字典。
我嘗試使用,window[item.id] = idName但我相信我不明白,因為它不起作用。
我的代碼:
<div id="id1" onclick="myfunc(this)"></div>
<div id="id2" onclick="myfunc(this)"></div>
<div id="id3" onclick="myfunc(this)"></div>
/* pre-existing variables I want to be able to use with IDs taken from function*/
id1={"name":"xxxx"}
id2={"name":"yyyy"}
id3={"name":"zzzz"}
function myfunc(item){
idName=item.id//returns string with id name
name=idName["name"]//doesn't work, as idName is a string and doesn't behave as a variable name;
}
uj5u.com熱心網友回復:
指定第dictionary一個
然后你就可以拿id's object... ??
const dictionary = {
id1: {name: 'xxxx'},
id2: {name: 'yyyy'},
id3: {name: 'zzzz'},
};
const myfunc = (item)=>{
const idName = item.id;
const aName = dictionary[idName];
console.log(aName.name);
};
<div id="id1" onclick="myfunc(this)">one</div>
<div id="id2" onclick="myfunc(this)">one but 2</div>
<div id="id3" onclick="myfunc(this)">the third</div>
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/320785.html
標籤:javascript html 细绳 变量
上一篇:計算機基礎知識(自我的理解)
下一篇:碰撞時如何檢查游戲物件的標簽?
