vaScript 中,比较操作符==和===都用于比较两个值是否相等。它们之间的区别在于,==操作符在进行比较时会进行类型转换,而===操作符不会进行类型转换。
具体来说,==操作符会将比较的两个值转换为相同的类型,然后再进行比较。例如,1 == "1"的结果是true,因为 JavaScript 会将字符串 "1" 转换为数字 1。这种类型转换虽然可以方便地进行比较,但在某些情况下可能会产生预期之外的结果,因此建议避免使用==操作符。
function identity(val1, val2) { return val1 === val2 }
function identity(val1, val2) { return Object.is(val1,val2) }
function identity(val1, val2) { if (x === y) { // 因为NaN和NaN在==下是不相等的,但其实是相等的 return x !== 0 || 1 / x === 1 / y; } //因为+0和-0在==下是相等的,但其实是不相等的 return x !== x && y !== y; } function identity(val, val2) { return Object.is(val, val2); }
function identity(val1, val2) { return Boolean(val1 === val2) }
function identity2(val1, val2) { return Object.is(val1,val2) } function identity3(val1, val2) { return val1===val2 } function identity(val1, val2) { return JSON.stringify(val1)=== JSON.stringify(val2) } // 啊哈哈哈哈
function identity(val1, val2) { return val1===val2; }
function identity(val1, val2) { // 这里把 +0 和 -0 当做相等 if(val1 === val2) { return true } // NaN return val1 !== val1 && val2 !== val2 }
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题