JavaScript中判斷兩個(gè)字符串是否相等的方法
先將用戶的輸入值全部轉(zhuǎn)換為大寫(或小寫),然后再行比較:
大家可以先參考實(shí)例:
http://www.dbjr.com.cn/article/154827.htm
var name = document.form1.txtUserName.value.toLowerCase(); if(name == "urname") { // statements go here. }
JavaScript有兩種相等運(yùn)算符。一種是完全向后兼容的,標(biāo)準(zhǔn)的"==",如果兩個(gè)操作數(shù)類型不一致,它會(huì)在某些時(shí)候自動(dòng)對(duì)操作數(shù)進(jìn)行類型轉(zhuǎn)換,考慮下面的賦值語句:
var strA = "i love you!"; var strB = new String("i love you!");
這兩個(gè)變量含有相同的字符序列,但數(shù)據(jù)類型卻不同,前者為string,后者為object,在使用"=="操作符時(shí),JavaScript會(huì)嘗試各種求值,以檢測兩者是否會(huì)在某種情況下相等。所以下面的表達(dá)式結(jié)果為true: strA == strB。
第二種操作符是"嚴(yán)格"的"===",它在求值時(shí)不會(huì)這么寬容,不會(huì)進(jìn)行類型轉(zhuǎn)換。所以表達(dá)式strA === strB的值為false,雖然兩個(gè)變量持有的值相同。
有時(shí)代碼的邏輯要求你判斷兩個(gè)值是否不相等,這里也有兩個(gè)選擇:"!="和嚴(yán)格的"!==",它們的關(guān)系就類似于"=="和"==="。
討論:
"=="和"!="在求值時(shí)會(huì)盡可能地尋找值的匹配性,但你可能還是想在比較前進(jìn)行顯式的類型轉(zhuǎn)換,以"幫助"它們完成工作。比如,如果想判斷一個(gè)用戶的輸入值(字符串)是否等于一個(gè)數(shù)字,你可以讓"=="幫你完成類型轉(zhuǎn)換:
if(document.form1.txtAge.value == someNumericVar) { ... }
也可以提前轉(zhuǎn)換:
if(parseInt(document.form1.txtAge.value) == someNumericVar) { ... }
如果你比較習(xí)慣于強(qiáng)類型的編程語言(比如C#,Java等),那么這里你可以延續(xù)你的習(xí)慣(類型轉(zhuǎn)換),這樣也會(huì)增強(qiáng)程序的可讀性。
有一種情況需要注意,就是計(jì)算機(jī)的區(qū)域設(shè)置。如果用"<"和">"來比較字符串,那么JavaScript把它們作為Unicode來比較,但顯然,人們?cè)跒g覽網(wǎng)頁時(shí)不會(huì)把文本當(dāng)作Unicode來閱讀:) 比如在西班牙語中,按照傳統(tǒng)的排序,"ch"將作為一個(gè)字符排在"c"和"d"之間。localeCompare()提供了一種方式,可以幫助你使用默認(rèn)區(qū)域設(shè)置下的字符排序規(guī)則。
var strings; // 要排序的字符串?dāng)?shù)組,假設(shè)已經(jīng)得到初始化 strings.sort(function(a,b) { return a.localeCompare(b) }); // 調(diào)用sort()方法進(jìn)行排序
相關(guān)文章
JavaScript代碼優(yōu)雅,簡潔的編寫技巧總結(jié)
專業(yè)開發(fā)人員將為未來的自己和“其他人”編寫代碼,而不僅僅只編寫當(dāng)前能工作就行的代碼。在此基礎(chǔ)上,簡潔代碼可以定義為自解釋的、易于人理解的、易于更改或擴(kuò)展的代碼。以下列表一些好編寫方式,僅供參考2022-10-10JavaScript中的toUTCString()方法使用詳解
這篇文章主要介紹了JavaScript中的toUTCString()方法使用詳解,是JS入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-06-06JavaScript的引用數(shù)據(jù)類型你了解多少
這篇文章主要為大家詳細(xì)介紹了JavaScript的引用數(shù)據(jù)類型,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助2022-02-02表單的焦點(diǎn)順序tabindex和對(duì)應(yīng)enter鍵提交
表單的焦點(diǎn)tab鍵順序:tabindex決定,如果值缺省,擇按順序一一對(duì)應(yīng),想詳細(xì)了解此功能應(yīng)用的朋友可以參考下2013-01-01JavaScript字符串對(duì)象toLowerCase方法入門實(shí)例(用于把字母轉(zhuǎn)換為小寫)
這篇文章主要介紹了JavaScript字符串對(duì)象toLowerCase方法入門實(shí)例,toLowerCase方法用于把字母字符串轉(zhuǎn)換為小寫形式,需要的朋友可以參考下2014-10-10