どのように"20"-20と同等のJavaScript?
-
05-07-2019 - |
質問
理解していると、"==="を比較しタイプでは各種パラメータのコードの結果は"と等しくない"たったのと比較すると、数式文字列タイプです。
var a = 20;
var b = "20";
if (a === b) {
alert("They are equal");
} else {
alert("They are not equal");
}
があまりないと思いますか、"=="だけを比較する値は"彼らは同等の"メッセージ。
var a = 20;
var b = "20";
if (a == b) {
alert("They are equal");
} else {
alert("They are not equal");
}
どのように値が等しい?な文字列"20"として格納され、ASCII文字50 48(0110010と0110000バイナリ)、20日として格納され、実際のバイナリー数0010100?
編集:りました!!いすべての対応がとてもかっこもかなり良くなったと思います。
解決
の ==
オペレーターの比較だけの価値を変数です。場合には種類が異なる変換"を参照してください。数20に変換される文字列"20"との結果が比較されます。
の ===
オペレーターを比較しい価値をもに、キャスト"を参照してください。この場合に "20" !== 20
他のヒント
きタイプ変換が必要で、JavaScriptに変換しますString,Number,Boolean,またはオブジェクトのオペランドとしております。
- と比較する場合には、番号や文字列の文字列に変換される数値です。JavaScriptの試みを変換する文字列を数値の文字数型の値です。第一に、数値は文字列から数値リテラルです。次に、この値は切り捨て最寄りの数の種類の値です。
- る場合にはオペランドはBoolean,Boolean型のオペランドに変換1の場合はtrue、+0の場合はfalseになります。
- 場合にはオブジェクトと比較すると数字文字列または、JavaScriptを返そうと試みのデフォルト値をオブジェクトです。事業者のみに変換するオブジェクトがプリミティブ値は、文字列または数値を使用し、valueOf、toStringの方法は、オブジェクト。この試みに変換するオブジェクトに失敗した場合、実行時エラーが発生します。
この問題に==比較ではJavaScriptのバージョン1.2いを行うタイプの変換には、バージョン1.1 1.3以降います。
の===比較して利用されるようになりましたがバージョン1.3では、チェックの二つの変数が一致する
が必要な場合はコードする対応バージョン1.1または1.2と1.3のバージョンのJavaScriptコードする事を確認しなければならな変数をすべて一致している場合で===比較しを行っています。
JavaScriptエンジンは、数値として、かぶりにbを前価値評価を行います。
の定義の一部に"=="を価値に変換され、同じ種類以前との比較が可能です。英語この文は長文の中の多くの緩やかに入力す。
当サイトでは、以下のブラウザになるように設計されることを含む文字列番号は"等しい"と。その理由は単純な利用の場合はユーザーに入力する数字を入力フィールドに検証でJS--んキャストに入力した文字列を数値の前との比較.
で簡単に共通利用の場合、===演算子ができるとの比較を行うタイプについてあわせて検討します。
私が知る限りではJavaScriptは自動データ型変換のフライでもこれらの変数は鋳る同種ます。