2015-11-22 90 views
3

這是一個非常基本的問題,我知道,但我無法理解Google和Stack Overflow發生了什麼。我可以使用三重等於JavaScript字符串比較嗎?

我看了herehere瞭解如何比較JavaScript中的字符串。他們的答案中都沒有提到三倍(===),並表示最好使用自己的函數(str1 < str2 ? -1 : str1 > str2)。

但是,通過堆棧溢出(herehere)中有關===的解釋,答案包含字符串比較。 從我在這些答案中看到的===確實可以用於字符串比較,那麼爲什麼它不包含在字符串比較答案中呢?

我只是想擴大我的JavaScript知識。

感謝您的任何見解!

+4

是的,'==='可以比較兩個字符串,從而給出'true'或'false'。你看到的其他例子是在對它們進行排序*列表時比較字符串。 – Pointy

+0

你是對的。謝謝! – Neta

+0

當比較你知道將要成爲字符串的東西時,我不認爲使用'==='而不是'=='有任何優勢。 '==='通常用於比較多種類型的事物。 IE瀏覽器。 ''0'!== 0'。我認爲'=='也更快,但我很懶惰找到你的基準來支持它。 – Rooster

回答

0
var str1 = "1"; 
var str2 = 1; 
if (str1 == str2) { 
     //Below code executes as it's true. 
     console.log("Yes, value of both are equal."); 
} 

if (str1 === str2) { 
    //Below code never executes as it's false. 
    console.log("No, both are not equal as type differs."); 
} 

==比較值,但比較===值以及類型。 ===可用作字符串比較,但如果您確定只是比較字符串,則==應該足夠。 ===只是一個更好的選擇。

+0

感謝這個例子,但我知道'==='和'=='有什麼區別,那不是我的問題。 – Neta

0

您可以使用這兩種方法來比較字符串,它只是當您要比較值AND類型時使用===。還有什麼是你的查詢?