javascriptステルスタイプの変換ステップ
787 ワード
ここでいう暗黙的なタイプの変換は、==による変換です. NaNがあれば、false に戻ります.ブールがあるかどうか見てください.ブールがあれば、ブールを数字 に変換します.続いて文字列があるかどうかを見ます.相手は対象で、対象はtoStringを使って変換します.相手は数字で、文字列は数字を回転します.相手は文字列で、直接比較します.その他はfalse を返します.数字であれば、相手が対象であり、対象をvalueOfと比較し、その他はすべてfalse に戻る. null、undefinedはタイプ変換を行いませんが、彼らは を等しいです.
この順番は必ず丸暗記してください.これは面接の時によく聞きました.
次はいくつかの問題です.自分でやります.
この順番は必ず丸暗記してください.これは面接の時によく聞きました.
次はいくつかの問題です.自分でやります.
0 == undefined
1 == true
2 == {valueOf: function(){return 2}}
NaN == NaN
8 == undefined
1 == undefined
null == {toString: function(){return 2}}
0 == null
null == 1
{ toString:function(){ return 1 } , valueOf:function(){ return [] }} == 1