簡體   English   中英

如何進行不區分大小寫的文本輸入?

[英]How do I make a case in-sensitive text input?

我的朋友正在開發一個有趣的Javascript Web應用程序,您可以在文本框中鍵入內容,然后計算機會返回結果,但區分大小寫。 他可以區分大小寫嗎? 我們嘗試使用:

var areEqual = string1.toUpperCase() === string2.toUpperCase();

這是JavaScript不區分大小寫的字符串比較 ,但他不知道如何使用它。

function isValid() {
    var password = document.getElementById('password').value;

    if (password == "Shut Up")
        { alert('HOW ABOUT YOU!') }

    else if (password == "No")
        { alert('You just did') }

}

只需在變量后面添加.toUpperCase()

else if (password == "No")
  {alert('You just did')}

變為:

else if (password.toUpperCase() == "No".toUpperCase())
  {alert('You just did')}

要不就:

else if (password.toUpperCase() == "NO") //Notice that "NO" is upper case.
  {alert('You just did')}

您可以通過這種方式使用它,例如在第一個else-if塊中:

 else if (password.toUpperCase() == "No".toUpperCase())
 {alert('You just did')}

應用於字符串的函數toUpperCase返回其大寫版本,因此對於No,它將為NO。 如果password變量包含單詞no的任何小寫字母組合,例如“ No”,“ nO”,“ NO”或“ no”,則password.toUpperCase()將為“ NO”。 前面的代碼等效於

 else if (password.toUpperCase() == "NO")
 {alert('You just did')}

請,如果您要執行此操作,請使用switch 在這里, toLowerCasetoUpperCase之間唯一的真正區別是案例行中的值不會對您大喊大叫。

function isValid() {
    var password = document.getElementById('password').value;

    switch (password.toLowerCase()){
        case "shut up":
            alert('HOW ABOUT YOU!');
        break;
        case "no":
            alert('You just did');
        break;
        case "okay":
            alert('Okay');
        break;

        // ...

        case "something else":
            alert('Really?');
        break;
        default:
            alert('Type Something Else')
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM