首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Javascript:或者操作符没有给出预期的输出

Javascript:或者操作符没有给出预期的输出
EN

Stack Overflow用户
提问于 2022-06-24 00:44:35
回答 1查看 22关注 0票数 -1

目前,我正在挑战自己,用HTML、CSS和JavaScript从头开始制作D&D 5E字符表。目前,我只是在测试,因为我对JavaScript非常陌生,我还不太确定它是如何运行的。我现在遇到的问题是用OR操作符创建if语句。我不想创造一个巨大的,臃肿的“如果,如果,如果其他,”块,我想简化它一点。

下面是我的HTML,用于字符类的下拉选择器。

代码语言:javascript
复制
<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的测试版本,它应该读取所选类的类型,然后根据类的类型更改值(使用什么命中骰子、保存抛出熟练程度等等)。

代码语言: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是向导或术士,那么就这样做,否则就这样做”吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-06-24 00:46:18

它必须是if (characterClass === "wizard"|| characterClass === "sorcerer") {

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72737964

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档