jsの強制タイプ変換
718 ワード
今日は曲がりませんでした.次のエラーコードを書きました.
どの値がif条件判定でfalseに変換されますか?trueに変換されますか?
ほとんどの場合はtrueに変換されますが、少ない場合はfalseに変換されます.
だから、主にfalseに変換される4つの状況を見ると、trueはその逆の状況です.
1.数字0 2.NaN 3.空の文字列 4.nullまたはundefined(厳格に等しくない場合、undefined==null)
私が犯したミスは主にマイナスだとif条件で判断されてfalseに変換されると思いますが、数字型は0以外はtrueです!!!!!!!
//
if(b.indexOf('detail')){
this.getRportById()
}
本来はindexOf方法では-1以上の数字を返し、if条件で判断し、値が負の場合はデフォルトのブール値はfalseであり、getRport ByID関数を実行せずに要求を完了する.デバッグ時にこの関数の戻り値が-1であることを発見した時に、この関数は依然として呼出して、やっと自分がjsのif()条件に関するタイプの転換を混ぜたことを発見しました.ブール値に関する問題に変換します.どの値がif条件判定でfalseに変換されますか?trueに変換されますか?
ほとんどの場合はtrueに変換されますが、少ない場合はfalseに変換されます.
だから、主にfalseに変換される4つの状況を見ると、trueはその逆の状況です.
1.数字0 2.NaN 3.空の文字列 4.nullまたはundefined(厳格に等しくない場合、undefined==null)
私が犯したミスは主にマイナスだとif条件で判断されてfalseに変換されると思いますが、数字型は0以外はtrueです!!!!!!!