JavaScript等しいオペレータ

1059 ワード

//Packt == true

console.log('packt' ? true : false);
//outputs true

console.log('packt' == true);
//1 - converts Boolean using toNumber
//'packt' == 1
//2 - converts String using toNumber
//NaN == 1
//outputs false

console.log('packt' == false);
//1 - converts Boolean using toNumber
//'packt' == 0
//2 - converts String using toNumber
//NaN == 0
//outputs false

console.log([0] == true);
//1 - converts Boolean using toNumber
//[0] == 1
//2 - converts Object using toPrimitive
//2.1 - [0].valueOf() is not primitive
//2.2 - [0].toString is 0
//0 == 1
//outputs false

//******************************* ===
console.log('packt' === true); //false

console.log('packt' === 'packt'); //true

var person1 = {name:'John'};
var person2 = {name:'John'};
console.log(person1 === person2); //false, different objects
ここでは主にJavaScriptの中の等しいオペレータを比較しました.==比較した二つの値のタイプが一致するかどうかを判断するだけで、タイプが一致せず、falseに戻ります.タイプが一致すると、値の大きさが等しいかどうかを判断します.または同じオブジェクトを参照するかどうかを判断します.