TypeScript/JavaScript (ts/js)判断任意两个值是否相等
在TypeScript或JavaScript中,判断任意两个值是否相等可以使用===
运算符。如果两个值类型相同,并且值也相同,那么它们是相等的。如果两个值类型不同,则会进行类型转换,并使用==
运算符进行比较,这可能会导致一些意外的行为。
以下是一个简单的函数,用于判断两个值是否相等:
function areEqual(value1: any, value2: any): boolean {
return value1 === value2;
}
// 示例使用
console.log(areEqual(1, 1)); // true
console.log(areEqual('1', 1)); // false
console.log(areEqual(undefined, null)); // false
console.log(areEqual(NaN, NaN)); // true,因为 NaN 是唯一一个不等于自身的值
请注意,NaN
(不是数字)与其自身不相等,即使NaN === NaN
返回false
。此外,当比较对象时,比较的是它们的引用而不是内容,因此通常需要一个更复杂的方法来判断对象是否相等。
评论已关闭