亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

值嚴格相等問題

值嚴格相等問題

白衣非少年 2023-12-11 15:18:44
我是編碼方面的新手,我正在對我必須制作的代碼進行評分。評分者非常挑剔,所以我在這方面遇到了問題,所以順序很重要,而現實世界中的事情并不重要。但仍然存在一些問題。我通過 Javascript 創建了一個鍵盤,方法是創建按鈕,為它們分配 innerText、ID 并將它們一個接一個地放置。這是我的代碼。let G4 = document.createElement ('button');let sibemol = document.createElement ('button');let C5 = document.createElement ('button');let D5 = document.createElement ('button');let F5 = document.createElement ('button');let G5 = document.createElement ('button');G4.innerHTML = '<button id="G4">G4</button>';sibemol.innerHTML = '<button id="A#4">Bb4</button>';C5.innerHTML = '<button id="C5">C5</button>';D5.innerHTML = '<button id="D5">D5</button>';F5.innerHTML = '<button id="F5">F5</button>';G5.innerHTML = '<button id="G5">G5</button>';G4.setAttribute('id', 'G4');sibemol.setAttribute('id', 'A#4');C5.setAttribute('id', 'C5');D5.setAttribute('id', 'D5');F5.setAttribute('id', 'F5');G5.setAttribute('id', 'G5');let keyboard = document.getElementById('simple-keyboard');keyboard.appendChild(G4);keyboard.appendChild(sibemol);keyboard.appendChild(C5);keyboard.appendChild(D5);keyboard.appendChild(F5);keyboard.appendChild(G5);我遇到的問題是,首先,“我應該有 6 個按鈕”,它正在算我,因為我有 12 個,為什么它算雙倍,我怎樣才能做到這一點,我在這里嘗試逐行發布(我有所有一個又一個按鈕的信息,但發現我必須按照他們想要的順序寫行,顯然-ik,這很糟糕。然后,我有“按鈕應該有innerText Bb4或A#4”,我有這樣的消息: 表達式評估為假值:assert(note.indexOf(text) >= 0)這是為什么……我已經有了內部文本,所以我不知道問題是什么。然后程序繼續攜帶這些消息,就好像事情會以錯誤的順序出現,在我之前提到的兩條消息之后: ? 3. 按鈕應該有 id-attribute C5 (3p) 期望值嚴格相等: ' A#4' !== 'C5'看起來,在我不解決 Bb4 問題之前,我不會檢查其余的代碼 - 而且我只有 5 個可能的提交可供使用......
查看完整描述

1 回答

?
www說

TA貢獻1775條經驗 獲得超8個贊

現在,您正在為每個按鈕創建一個按鈕:


let C5 = document.createElement ('button');

C5.innerHTML = '<button id="C5">C5</button>';

這就像創造一些東西


<button><button id="C5">C5</button></button>

這就是造成問題的原因。


相反,分配給您創建的按鈕的id和屬性:textContent


sibemol.id = 'A#4'; // you're already doing this with setAttribute below

sibemol.textContent = 'Bb4';

C5.id = 'C5';

C5.textContent = 'C5';

D5.id = 'D5';

D5.textContent = 'D5';

// etc

(不需要setAttribute,它不必要地冗長)


或者,如果 ID 與 textContent 匹配,則不再重復:


const keys = ['G4', 'Bb4', 'C5', 'D5', 'F5', 'G5'];

for (const key of keys) {

  const button = keyboard.appendChild(document.createElement('button'));

  button.id = key;

  button.textContent = key;

}


查看完整回答
反對 回復 2023-12-11
  • 1 回答
  • 0 關注
  • 150 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號