javascript比較演算子分析
4419 ワード
最新の比較子演算に関するアドレスJS等しい比較アルゴリズム(=)の原理について
例を見る
分析を続ける
分析を続ける
表式は左から右へ計算することを知っています.
元の表式0==0を設定します.
まず右を復元します.
最後に結果を示す
比較方式は以下の1つの中にbookがあります.bookを対応のnumber 2の一方がnumberの一方がstringに変換します.stringを数字に変換します.3 stringを直接bookに変換すると、空の文字列'''がfalseに変換されます.他のすべての文字列をtrueに変換します.
PS:全ての配列と対象のbook値はtrue、nullはfalseです.
以上は個人分析だけです.もっと権威のある方は公式資料を調べてください.誰が資料を見つけましたか?伝言をお願いします.ありがとうございます.
//出自http://www.cnblogs.com/ahjesus著者の労働の成果を尊重し、転載は出典を明記してください.ありがとうございます.
例を見る
if ([]) {
console.log("true")
}
if ([] != true) {
console.log("false")
}
//result true false
[]trueですか?それともfalseですか? console.log([] == ![]);
//result true
[]trueですか?それともfalseですか?分析を続ける
console.log(boolean([]));
//result true
trueですかはい、確かにtrueです.どうして前の二つの結果が出ますか?分析を続ける
表式は左から右へ計算することを知っています.
元の表式0==0を設定します.
まず右を復元します.
0 == 0; true
そして推計します false == 0; true
引き続く"" == false; true
引き続く[] == ""; true
右の復元が完了しました 0 == 0;
false == 0;
"" == 0;
[ ] == 0;
左に戻す[ ] == false; true
引き続くfalse == ![]; true
だから[ ] == ![]; true
左の復元が完了しました/http://www.cnblogs.com/ahjesusから作者の苦労した労働の成果を尊重します.転載は出所を明記してください.ありがとうございます.最後に結果を示す
0 == 0;
false == 0;
"" == 0;
[] == 0;
[] == false;
[] == ![];
原理分析 //
[ ] == ![]; //![] bool
[ ] == false; // bool, bool number
[ ] == 0; // number string, string [ ].toString()
"" == 0; // string bool , ‘’ false, true
false == 0; // bool, bool number
0 == 0; //
まとめ:比較方式は以下の1つの中にbookがあります.bookを対応のnumber 2の一方がnumberの一方がstringに変換します.stringを数字に変換します.3 stringを直接bookに変換すると、空の文字列'''がfalseに変換されます.他のすべての文字列をtrueに変換します.
PS:全ての配列と対象のbook値はtrue、nullはfalseです.
以上は個人分析だけです.もっと権威のある方は公式資料を調べてください.誰が資料を見つけましたか?伝言をお願いします.ありがとうございます.
//出自http://www.cnblogs.com/ahjesus著者の労働の成果を尊重し、転載は出典を明記してください.ありがとうございます.