Javascript では、== と === は両方とも 2 つの値が等しいかどうかを比較するために使用される演算子ですが、両者の違いは比較と型チェックの方法にあります。== は必須の型変換比較であり、=== は非必須の型変換比較です。JavaScript アプリケーションでは、型変換によってもたらされるリスクを回避するために、通常は === 演算子が好まれます。標準的なアプリケーションの作成方法。以下では、検証コードのデモを使用して、2 つの違いを説明します。
まず == の比較をテストします。
入力 12345 とプリセット 123456 を確認すると、結果は失敗です。
123456 とプリセットの 123456 を入力して再度確認すると、検証に合格します。
== コンパレーターを使用すると、入出力の String (文字列型) を Number (数値型) に自動的に変換してデータを比較することがわかります。
=== を使用してテストと比較を行い、さらに 123456 を入力して比較すると、結果の検証は失敗します。
出力 String 型を Number 型に変換してデータ比較を実行するには、主に parseInt() メソッドと Number() メソッドを使用するさまざまな方法があります。
parseInt() メソッド: parse() メソッドについては、前号で Json のシリアル化と逆シリアル化への適用についても詳しく説明しました。
Numbrt() メソッド: String を Number 型に変換することもできます。
テストコード:
<script>
var system_code = 123456;
// var verify_code = parseInt(prompt('请输入验证码'));
var verify_code = Number(prompt('请输入验证码'));
console.log('system_code的类型为:' , typeof system_code);
console.log('verify_code的类型为:', typeof verify_code);
function check_code(){
if (verify_code === system_code){
console.log('验证成功');
}else{
console.log('验证失败,请重新输入');
};
var isConfirm = confirm('请确认');
};
check_code();
</script>
テストビデオ:
Javascript比較演算子==と===の応用分野