首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

逻辑运算的1点小技巧

2012-11-03 
逻辑运算的一点小技巧&& 与 ||?这两个运算符算是和传统语言(java,c++)区别蛮大了,首先看两段代码:?varx

逻辑运算的一点小技巧

&& 与 ||

?

这两个运算符算是和传统语言(java,c++)区别蛮大了,首先看两段代码:

?

var  x = '1';alert(true|| x);alert(false && x)
?

这个结果可能都知道,即使传统语言程序员也能猜到结果是 true false,那么下面的结果呢

?

var  x = '1';alert(false || x);alert(true && x)

?

传统语言程序员可能会说那就是 true true,可惜结果是? 是? 1 1

?

?

这就是脚本语言的一个特性,perl,js包含,逻辑运算符会像传统语言一样根据短路原理计算逻辑表达式,根据该元素转换成的boolean值判断,返回最后一个短路计算的值。

?

如 false || x


根据短路原理,计算false不短路,下一步看 x 转换的 boolean 为 true,则最终返回 x,而? true || x,看到true 一下就短路了,立刻返回 true 了,^_^,这就是 我们常见的

?

a.onclick = function(e) {var event =e || window.event;}
?

思考题:下列代码返回什么

?

alert(''||false);alert(false || '');
?

ps:数据转换 boolean 值 js规则


undefined , null -> false

0 NaN -> false

'' -> false


其他都为 true

?

?

热点排行