Object.is方法的polyfill
随笔
if (!Object.is) { Object.defineProperty(Object, 'is', { value: function(x, y) { if (x === y) { // 需要辨别+0与-0(用"==="比较+0和-0会是true,但实际应该为false), // 所以,在下面的判断中, // 如果x和y不为0,则返回true; // 如果x和y为0,则用 1/x(Infinity/-Infinity) 比较 1/y(Infinity/-Infinity)做比较; return x !== 0 || 1 / x === 1 / y; } // 在使用"==="比较时,NaN跟NaN是不等的, // 所以这个单独对NaN的情况进行判断 return x !== x && y !== y; }, }); }
分类:
JavaScript
标签:
JavaScript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?