javascript中if条件语句if (isNaN(a) || !a)这个条件看不懂是什么意思,求高人指点,不胜感激。。。
还有下面的这句:if(!year||!month||!date)//NaN转换成布尔值将会是false这个也不懂是什么意思,翻书也找不到相应的解释,求指教!!...
还有下面的这句:if (!year || !month || !date) //NaN转换成布尔值将会是false 这个也不懂是什么意思,翻书也找不到相应的解释,求指教!!
展开
4个回答
展开全部
任何变量或值放在 if 条件括号内,都将自动转换为boolean类型
这个if语句意识是:如果变量 a 未定义undefined、或者是空字符串、或者是空对象null、或者是数字 就执行 if { //Code }
----------------------------------------------------------------------------------------------------------
if (a 是一个合法数字 || !a用来判断变量未定义、空字符串、数字0和NaN、空对象)
!a : 将a转换为一个 boolean 的简写方式,各类型转换成boolean值规范如下:
数据类型 true false
Number 任何非0数字值 0和NaN
String 非空字符串 ''(空字符串)
Object 任何对象 null
Undefined n/a undefined
-----------------------------------------------------------------------------------------------------------
补充一句:各类型都可以相互转换。比如空字符串转换为Number就是 0......建议你看看Javascript类型转换相关资料。你就懂了。
这个if语句意识是:如果变量 a 未定义undefined、或者是空字符串、或者是空对象null、或者是数字 就执行 if { //Code }
----------------------------------------------------------------------------------------------------------
if (a 是一个合法数字 || !a用来判断变量未定义、空字符串、数字0和NaN、空对象)
!a : 将a转换为一个 boolean 的简写方式,各类型转换成boolean值规范如下:
数据类型 true false
Number 任何非0数字值 0和NaN
String 非空字符串 ''(空字符串)
Object 任何对象 null
Undefined n/a undefined
-----------------------------------------------------------------------------------------------------------
补充一句:各类型都可以相互转换。比如空字符串转换为Number就是 0......建议你看看Javascript类型转换相关资料。你就懂了。
追问
解释的很详细,所有疑问基本上已解决,太感谢你了!!
追答
- -
展开全部
if (isNaN(a) || !a)的意思是:如果a是合法数字或者不是a的值的话就执行这一段
if (!year || !month || !date)的意思是:如果不是year的值 或者不是month的值或者不是date的值的话
就执行这一段
if (!year || !month || !date)的意思是:如果不是year的值 或者不是month的值或者不是date的值的话
就执行这一段
追问
嗯,好像是这个意思,“不是a的值”是什么意思?是不是表示不是空值啊?
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
isNaN(a)好像是判断变量非空,!year if(year==false) ,貌似是这样的吧
追问
isNaN(a)不是判断a是不是合法数字的吗?我只知道这一点
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
||是或的意思
!非的意思
!非的意思
追问
这个我知道,就是不懂括号里面的总体怎么解释,你懂吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询