riddle函数传入什么参数时会返回true而非false
这是符合JavaScript语法的函数,核心逻辑是通过parme !== parme的判断检测传入参数是否具备「不等于自身」的特性。
函数返回true的唯一场景
当你传入的参数为NaN(非数字值)时,函数会返回true。
JavaScript规范明确规定,NaN是全语言中唯一不满足「值等于自身」的类型,其他所有合法值(包括undefined、null、普通数字、字符串、布尔值、对象、Symbol等)都符合值 === 值的规则,传入这类参数时函数统一返回false。
调用示例
// 返回true的情况 riddle(NaN) riddle(0/0) // 0除以0的运算结果为NaN riddle(Number('非数字字符串')) // 字符串转数字失败返回NaN // 返回false的情况 riddle(123) riddle('test') riddle(undefined) riddle(null) riddle({})
内容的提问来源于stack exchange,提问作者tchStud1405
相关产品推荐
相关产品推荐

