對於<
算子,當它適用於兩個字符串,兩個數字和兩個布爾值時,它似乎很容易理解。不同類型的比較規則是什麼(< and >)?
我的問題有兩個部分:
什麼是規則,當我們用它來比較兩個對象?
看來我不能寫{} < {}
,但下面的代碼生成了false
。
var a = {};
var b = {};
console.log(a < b); //false
什麼是規則,當我們用它來比較兩個不同的類型?
true < "" //false
true > "" //true
10 < true //false
10 < "" //false
我不知道爲什麼結果是這樣的。我發現an article on comparison in JavaScript但沒有任何細節。
順便說一句,我不知道如何==
和===
工作。
你應該看看Rhino的書籍JavaScript:The Definitive Guide(http://shop.oreilly.com/product/9780596805531.do)。這對JavaScript中的類型轉換和比較有很好的解釋。 – Jason