我想回圈瀏覽一個陣列并給出它們的名字。 我試著使用模板字面,但并不奏效。
const colors = ['yellow'/span>, 'green', 'brown', 'blue', ' pink','black']
for (let color of colors){
const `${color}Button` = document. querySelector(`#${color}`) 。
}
我想要的結果應該是這樣的
yellowButton = document.querySelector(#yellow) 。
greenButton = document.querySelector(#green)。
.
.
.
.
blackButton = document.querySelector(#black)。
請你們修改一下我的代碼好嗎?
uj5u.com熱心網友回復:
你可以將變數附加到視窗物件上,使其作為一個全域變數被訪問。然而,這是一種不好的做法,因為它污染了命名空間,造成了不必要的錯誤,并在將來引起很多麻煩。一個更好的方法是使用本地的javascript物件,因為這正是它的用例。
以你的例子來說:
。const colors = ['yellow'/span>, '綠色', '棕色', '藍色', '粉色', '黑色']
const buttons = colors.reduce((accum, color) => {
accum[`${color}Button`] = document. querySelector(`#${color}`) 。
return accum;
}, {});
console.log(button)
//訪問某些元素:。
const elem = buttons.yellowButton。
console.log(elem)
< button id='yellow'></button>
<button id='green' > </button>>
<button id='brown'/span>> </button>>
<button id='blue> </button>>
<button id=' pink'> </button>>
<button id='black> </button>。
<iframe name="sif1" sandbox="allow-forms allow-modals allow-scripts" class="snippet-box-edit snippet-box-result" frameborder="0"></iframe>
uj5u.com熱心網友回復:
在瀏覽器中,你可以將變數附加到視窗介面上,并像在全域范圍內定義一樣參考它們。
for (const color of colours) {
window[`${color}Button`] = document. querySelector(`#${color}`)
}
console.log(redButton.textContent)
然而,正如其他人所提到的,這可能不是最好的方法。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/316196.html
標籤:
上一篇:如何改變結構中變數的值?
下一篇:利用繼承在不同的類之間共享資料
