优艾设计网

js惰性求值中 true&&字符串&&true 为什么会输出true?

在书上看到js惰性求值的一段介绍:如果javascript引擎在一个逻辑表达式中遇到一个非布尔类型的操作数,那么该操作数的值就会成为该表达式所返回的结果。列如:

true || "something";输出 true
true && "something";输出 "somethi优艾设计网_设计模板ng"
true&&"something"&&true;输出true

对于第三个输出true不理解,按照书上的介绍不是应该输出"something"吗?

还有我自己测试中将true && "something" 的顺序颠倒变成

"something"&&true; 输出"true",这又是为什么呢?


ycgq1982 11小时前

false || something 返回 ‘something’ ,因为判优艾设计网_设计百科断了 ’something‘是才能有答案


黃建荃 11小时前

优艾设计网_PS论坛

true && something || true , 返回什么? 当然是 something, 因为判断到 something 的时候,整个语句就已经有答案了 ,因此返回 something


纱尘幔桃生1818535059 优艾设计网_平面设计 11小时前

第三句,同理,判断了 第一个 true ,第二个 something,仍然不能确定整体是否为 true ,需要判断第三个条件,自然返回 true


360U3212267496 优艾设计网_设计LOGO 11小时前

希望我讲明白了。


折失的誓言群 11小时前

先看第一句 true || "somethi优艾设计网_Photoshop交流ng" , || 或字符,遇到 true ,条件成立,返回true


纱尘幔桃生1818535059 11小时前

优艾设计网_PS交流

第二句,&& 且字符,碰到 true ,但条件不一定成立,需要判断后面的, 那么就返回后面的值 也就是 something


0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜