1.用全等于号
function identity(val1, val2) {
// ===代表是全等于
return val1 === val2 ? true : false
}
2.
function identity(val1, val2) {
// 判断两个值是不是NAN的情况
if ((val1 !== val1)&&(val2 !== val2)) {
return true;
}
if (val1 === val2) {
return true;
}
return false;
}
3.判断0 和 -0 情况 和 NAN的情况
function identity(val1, val2) {
if(val1===val2){
// +0不等于-0;但是用===的话会返回true;分母不能为0;
return val1 !== 0 || val2 !== 0 || 1/val1 === 1/val2;
}else {
//NaN等于NaN 但是NaN === NaN 等于true;
return val1 !== val1 && val2!== val2;
}
}
4.用es6 的新方法
function identity(val1, val2) {
// Object.is() 是判断两个值是否相等
return Object.is(val1,val2)
}