亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JavaScript中判斷兩個字符串是否相等的方法

 更新時間:2015年07月07日 10:18:19   投稿:goldensun  
這篇文章主要介紹了JavaScript中判斷兩個字符串是否相等的方法,是JS入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下

先將用戶的輸入值全部轉(zhuǎn)換為大寫(或小寫),然后再行比較:

大家可以先參考實例:

js中怎么判斷兩個字符串相等的實例

http://chabaoo.cn/article/154827.htm

  var name = document.form1.txtUserName.value.toLowerCase();


  if(name == "urname")


  {


   // statements go here.


  }



      JavaScript有兩種相等運算符。一種是完全向后兼容的,標(biāo)準(zhǔn)的"==",如果兩個操作數(shù)類型不一致,它會在某些時候自動對操作數(shù)進行類型轉(zhuǎn)換,考慮下面的賦值語句:

  var strA = "i love you!";


  var strB = new String("i love you!");



      這兩個變量含有相同的字符序列,但數(shù)據(jù)類型卻不同,前者為string,后者為object,在使用"=="操作符時,JavaScript會嘗試各種求值,以檢測兩者是否會在某種情況下相等。所以下面的表達式結(jié)果為true: strA == strB。


      第二種操作符是"嚴(yán)格"的"===",它在求值時不會這么寬容,不會進行類型轉(zhuǎn)換。所以表達式strA === strB的值為false,雖然兩個變量持有的值相同。


      有時代碼的邏輯要求你判斷兩個值是否不相等,這里也有兩個選擇:"!="和嚴(yán)格的"!==",它們的關(guān)系就類似于"=="和"==="。


討論:


      "=="和"!="在求值時會盡可能地尋找值的匹配性,但你可能還是想在比較前進行顯式的類型轉(zhuǎn)換,以"幫助"它們完成工作。比如,如果想判斷一個用戶的輸入值(字符串)是否等于一個數(shù)字,你可以讓"=="幫你完成類型轉(zhuǎn)換:

  if(document.form1.txtAge.value == someNumericVar) { ... }



      也可以提前轉(zhuǎn)換:

  if(parseInt(document.form1.txtAge.value) == someNumericVar) { ... }



      如果你比較習(xí)慣于強類型的編程語言(比如C#,Java等),那么這里你可以延續(xù)你的習(xí)慣(類型轉(zhuǎn)換),這樣也會增強程序的可讀性。

 

      有一種情況需要注意,就是計算機的區(qū)域設(shè)置。如果用"<"和">"來比較字符串,那么JavaScript把它們作為Unicode來比較,但顯然,人們在瀏覽網(wǎng)頁時不會把文本當(dāng)作Unicode來閱讀:) 比如在西班牙語中,按照傳統(tǒng)的排序,"ch"將作為一個字符排在"c"和"d"之間。localeCompare()提供了一種方式,可以幫助你使用默認區(qū)域設(shè)置下的字符排序規(guī)則。

 var strings; // 要排序的字符串?dāng)?shù)組,假設(shè)已經(jīng)得到初始化


 strings.sort(function(a,b) { return a.localeCompare(b) }); // 調(diào)用sort()方法進行排序

相關(guān)文章

最新評論