记错:NaN 不等于 NaN

javascript 复制代码
if (parseInt(split_value[0])==NaN || parseInt(split_value[1]) ==NaN ) {				
	return
	} else {
	let newsssA = parseInt(split_value[0] ? split_value[0] : 0);
	let newsssB = (split_value[1] ? split_value[1] : 0);
	that.new_zl = newsssA + "." + newsssB;
}

以上是错误演示

当时做的这个逻辑是返回 nan 就不做值的处理

结果 发现 一直没有跳过循环,还是走的 else

测试发现

javascript 复制代码
	let empiy = undefined;
	console.log(isNaN(parseInt(empiy)));
	console.log(parseInt(empiy) == NaN);

去网上搜索发现

NaN ,即非数值(Not a Number)是一个特殊的数值,这个数值用于表示一个本来要返回数值的操作数未返回数值的情况(这样就不会抛出错误了)。任何与NaN进行运算的结果均会为NaN,NaN与自身不相等(NaN不与任何值相等)。

javascript 复制代码
NaN=NaN;
NaN
 
NaN==NaN;
false
 
NaN===NaN;
false
javascript 复制代码
alert(isNaN(NaN)); //true
alert(isNaN(99)); //false(99是一个数值)
alert(isNaN("99")); //false(可以被转换成数值99)
alert(isNaN("nan")); //true(不能转换成数值)
alert(isNaN(true)); //false(可以被转换成数值1)

ECMAScript定义了 isNaN() 函数。这个函数接受一个参数,该参数可以是任何类型,而函数会帮我们确定这个参数是否"不是数值"。 isNaN() 在接收到一个值之后,会尝试将这个值转换为数值。某些不是数值的值会直接转换为数值,例如字符串 "10" 或 Boolean 值。而任何不能被转换为数值的值都会导致这个函数返回 true 。

参考文章

https://blog.csdn.net/Smtime826/article/details/82769350?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522d6505e61909b7f0acdb956309e5dc2cc%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=d6505e61909b7f0acdb956309e5dc2cc&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduend~default-1-82769350-null-null.142^v100^pc_search_result_base8&utm_term=nan%20%E4%B8%8D%E7%AD%89%E4%BA%8Enan&spm=1018.2226.3001.4187

相关推荐
leoZ2316 分钟前
2026-09-09-springboot-cloud-deploy-pitfalls
java·前端·javascript·vue.js·人工智能·spring boot·后端
秦老师Q14 分钟前
php零基础入门到实战,从语法到框架,一篇搞定
开发语言·php
驭渊的小故事1 小时前
多线程02
java·开发语言·jvm
芭拉拉小魔仙1 小时前
Vue 2 门诊收费系统中的医保结算流程设计与实践
前端·javascript·vue.js
阿里嘎多学长1 小时前
2026-09-09 GitHub 热点项目精选
开发语言·程序员·github·代码托管
moonrailgun1 小时前
用 Node.js 复刻 Codex Astra 的终端星光
前端·javascript·算法
君顾11 小时前
本地折扣卡 CPS 平台搭建:从系统架构到落地实战
java·开发语言·折扣卡
默_笙1 小时前
💫 给金鱼建图书馆(下):Milvus 向量数据库,让 AI 拥有长期记忆
前端·javascript
liangshanbo12152 小时前
手写 Function.prototype.call 与 Function.prototype.apply 面试题满分答案
开发语言·javascript·原型模式
Zenova EdgeOS2 小时前
C++ 工业边缘 libcurl HTTP 客户端实战
开发语言·c++·网络协议·边缘计算