"或"条件不起作用JavaScript

时间:2017-05-28 14:00:01

标签: javascript

我有一个应该预测运行功能的条件。但它不会起作用。

<html>

<div class="invertfunction"onclick="invertFunction(this)">
    <div id="onbutton">
    <div id="movingbutton"></div>
      </div>
</div>
</html>

当我只使用if ((event.keyCode !== 40) || (event.keyCode !== 38)) { self.inputVal = input.value; var result = pokemonNames.filter(function(pokemon) { return pokemon.includes(self.inputVal.toLowerCase()); }); if (result.length > 5) { result = result.filter(function(pokemon, index) { return index < 5; }); } 时,它工作正常,但当我使用event.keyCode !== 40时,它会起作用。

2 个答案:

答案 0 :(得分:1)

如果你想在if.keyCode不是40或38时执行if块你想要这个

((event.keyCode !== 40) && (event.keyCode !== 38))

如果要在event.keyCode为40或38

时执行代码
((event.keyCode == 40) || (event.keyCode == 38))

答案 1 :(得分:0)

正如Aaron在评论中指出的那样,它将永远解决为true。如果数字是40,则第二个条件将为真(因为它不是38),反之亦然。请改用&&,它会起作用。