2 qq 40053130 qq_40053130 于 2017.09.01 19:45 提问

打印 1&&2||3,1||2&&3结果为什么是2,1

在console中打印 1&&2||3,1||2&&3结果是2,1 ,为什么打印2,1 ,实现这个打印结果的原理是?

3个回答

shui878412
shui878412   2017.09.02 08:21

1&&2||3 运算到2的位置,之后就不会往后运行,所以会输出2.
1||2&&3 运行到1的位置,之后就不会往后运行,所以会输出1.

HUSHILIN001
HUSHILIN001   2017.09.02 17:25

1,2,3三者都是代表的是true,
在第一步中,1&&2此时返回的是2,接着就变成了 2||3,由于2是true。所以直接返回的是true
同样的,在第二部里面。1||2的时候,由于1是true,所以就直接返回1
也就是说:
1、只要“||”前面为false,不管“||”后面是true还是false,都返回“||”后面的值。
2、只要“||”前面为true,不管“||”后面是true还是false,都返回“||”前面的值。
建议将第二部的1改为0实验一下

Czhenya
Czhenya   2017.09.01 22:00

运算符的优先级的问题,,建议用小括号,扩上,,,

Csdn user default icon
上传中...
上传图片
插入图片