比较字符串而不区分大小写

时间:2015-06-18 19:16:50

标签: javascript web compare case-sensitive

我在JavaScript中制作的变量(它是一个字符串)有问题。它将来自用户prompt,然后使用switch我将检查它是否为真。然后,当我输入大写时,它会说它被识别为另一个var。

这是我的代码:

var grade = prompt("Please enter your class") ;

switch ( grade ){
    
    case "firstclass" :
         alert("It's 500 $")
         break;
    case "economic" :
         alert("It's 250 $")
         break;
    default:
         alert("Sorry we dont have it right now");

}

4 个答案:

答案 0 :(得分:4)

最初只是小写。

var grade = prompt("Please enter your class").toLowerCase() ;

答案 1 :(得分:3)

因为@nicael只是小写了他们输入的内容。但是,如果您需要保留输入方式并仅使用小写等效项进行比较,请使用:

var grade = prompt("Please enter your class") ;

switch ( grade.toLowerCase() ){

  case "firstclass" :
     alert("It's $500");
     break;
  case "economic" :
     alert("It's $250");
     break;
  default :
     alert("Sorry we don't have it right now");
}

答案 2 :(得分:0)

您可以使用String原型方法toLowerCase()将整个字符串设置为小写,并将两者进行比较。

要保持输入相同,请在switch语句中改变字符串:

switch( grade.toLowerCase() ) {
  // your logic here
}

答案 3 :(得分:0)

在区分大小写的语言中,您应始终将大写字符串与大写值进行比较 或者低一些。

var grade = prompt("Please enter your class") ;

switch (grade.toUpperCase())
{    
case "FIRSTCLASS" :
     alert("It's 500 $")
     break;
case "ECONOMIC" :
     alert("It's 250 $")
     break        ;
default   :
     alert("Sorry we dont have it right now");
}