!==不比较字符串

时间:2018-11-14 11:06:58

标签: javascript jquery

我正在尝试使用下面的代码比较两个字符串

var roomStatus = $("#room-status").val().trim();
var inService = "In Service";
var caInService = "CA In Service";

if (roomStatus !== inService || roomStatus !== caInService) 
{
  swal({
      title: "Allotment Cancelled",
      type: "error",
      text: "The Student cannot be alloted to this Room because this room is "+roomStatus,
  });
  return false;
}

如果roomStatus等于In Service,则上面的代码无法进行比较。它始终处于if条件。 请帮忙!!!

2 个答案:

答案 0 :(得分:3)

替换此行:

if (roomStatus !== inService || roomStatus !== caInService) {

if (!(roomStatus === inService || roomStatus === caInService)) {

编辑

如评论员所建议,此行更容易阅读:

if (roomStatus !== inService && roomStatus !== caInService) {

答案 1 :(得分:0)

在一种算法中,有两个毫无意义的条件组(if (true)if (false)):

if (var !== val1 || var !== val2)

始终取值为true:如果var等于val1,则不等于val2,反之亦然。

if (var === val1 && var === val2)

总会得出false,因为var不能同时具有两个值。

  

注意:在这里,我考虑了val1 !== val2和简单的条件,没有任何影响