厳格な等価性と抽象的な等価性
JavaScript特有の文法である===
と==
の使い分けをまとめます。
厳格な等価性(===
)
2つのオペランドを比較して論理値で結果を返す。
2つのオペランドの型が異なる場合には常に偽と判断する。
console.log('Hello' === 'Hello');
> true
console.log('Hello' === 'hogehoge');
> false
console.log('1' === 1);
> false
console.log(0 === false);
> false
抽象的な等価性(==
)
2つのオペランドの型変換を行い、比較してから論理値で結果を返す。
console.log('Hello' == 'Hello');
> true
console.log('10' == 10);
> true
console.log('false' == 0);
> true
console.log(0 == undefined);
> true