[转]如何让if语言写的更简洁?(七种布尔转换为假的情况总结)

明确的知道哪些数值(或数据类型)转换成布尔值之后为假,可以使程序更加简洁。在AS3中,一共有三种数据类型和三种变量的值在转换为布尔值之后为假。

     七种布尔转换为假的情况多数数据类型或变量值转换成布尔值之后均为真,因此我们只需记住哪些情况为假即可。转换成布尔值之后为假的情况一共有6种:
void, undefined,null, ”(这里不是双引号,是两个单引号,表示空字符串,亦可以用“”表示), 0(不是噢,是零), false,Number.NaN
前2个为数据类型,是AS3中两个特殊的数据类型,可以称之为常量数据类型,因为它们的值是固定不变的。后面4个是数据类型的特殊值。null为未实例化的空对象,”为空字符串,0与Number.NaN为数值类型的特殊值,false为布尔假。


     代码实验:验证上述七种情况可以用以下代码验证,以下trace均为false,除此之外的情况,例如非null对象,不等于0的数字等等均为true:
trace( Boolean(void), Boolean(null), Boolean(undefined), Boolean(''), Boolean(0), Boolean(Number.NaN) );不少初学AS3的人只知道当字符串为null时,其值为假,其实为空时,亦为假。


     简单应用举例在XML操作中,经常会遇到判断一个属性是否被定义的情况,如下:
if (undefined != node.@name)其实不需要undefined关键字,只需要写成这样便可以:
if (node.@name)undefined关键字太长,写起来是一件很麻烦的事情

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值