目前,我正在挑战自己,用HTML、CSS和JavaScript从头开始制作D&D 5E字符表。目前,我只是在测试,因为我对JavaScript非常陌生,我还不太确定它是如何运行的。我现在遇到的问题是用OR操作符创建if语句。我不想创造一个巨大的,臃肿的“如果,如果,如果其他,”块,我想简化它一点。
下面是我的HTML,用于字符类的下拉选择器。
<input type="number" id="stat" value="0"> <button id="roll-btn">Roll Stats</button><br><br>
<select name="class" id="character-class">
<option value="artificer">Artificer</option>
<option value="barbarian">Barbarian</option>
<option value="bard">Bard</option>
<option value="cleric">Cleric</option>
<option value="druid">Druid</option>
<option value="fighter">Fighter</option>
<option value="monk">Monk</option>
<option value="paladin">Paladin</option>
<option value="ranger">Ranger</option>
<option value="rogue">Rogue</option>
<option value="sorcerer">Sorcerer</option>
<option value="warlock">Warlock</option>
<option value="wizard">Wizard</option>
</select>下面是javascript的测试版本,它应该读取所选类的类型,然后根据类的类型更改值(使用什么命中骰子、保存抛出熟练程度等等)。
let characterClass = document.getElementById("character-class").value /* Determines the selected class. Will be set to "artificer" by default */
console.log(characterClass)
if (characterClass === "wizard"||"sorcerer") { /* Wizard and sorcerer both have a hit die value of a D6 */
console.log("Squishy boi")
} else {
console.log("Not a wizard/sorcerer")
}但是,当我运行这段代码时,它会打印"squishy“,尽管默认设置为”巧工“。我是不是误解了JS的工作方式?是不是“如果characterClass是向导或术士,那么就这样做,否则就这样做”吗?
发布于 2022-06-24 00:46:18
它必须是if (characterClass === "wizard"|| characterClass === "sorcerer") {
https://stackoverflow.com/questions/72737964
复制相似问题