相关疑难解决方法(0)

具有多个条件的javascript if语句是否测试了所有这些条件?

在javascript中,当使用具有多个条件的if语句进行测试时,javascript是否会对它们进行全部测试,或者在测试它们之前是否会保释,如果它已经是假的?

例如:

 a = 1
 b = 2
 c = 1

 if (a==1 && b==1 && c==1)
Run Code Online (Sandbox Code Playgroud)

将javascript测试所有这3个条件,或者在看到b不等于1之后,因此是假的,它会退出语句吗?

我从表演的角度问道.例如,如果我正在测试3个复杂的jQuery选择器,我宁愿不让jQuery遍历DOM 3次,如果它通过第一个显然会返回FALSE.(在这种情况下,嵌套3 if语句更有意义).

附录:更多的好奇心,这个的正确用语是什么?我注意到你们很多人都使用"短路"一词.还有,有些语言会这样做而其他语言不这样做吗?

javascript

91
推荐指数
5
解决办法
8万
查看次数

在csh中,为什么4 - 3 + 1 == 0?

#!/bin/csh

@ cows = 4 - 3 + 1
echo $cows
Run Code Online (Sandbox Code Playgroud)

运行时这个简单的csh脚本在我期望"2"时产生输出"0".

~root: csh simple.1
0
Run Code Online (Sandbox Code Playgroud)

我做了一堆看,我唯一能想到的是" - "被读作一元否定而不是减法,因此改变运算符优先级并以4 - 4而不是2 + 1结束.这是正确?如果是这样,有什么理由吗?如果不是......帮助!

编辑:所以他们是正确的联想!这些运算符在C中不是正确的关联,是吗?C-Shell与C有什么不同?

csh operators

13
推荐指数
2
解决办法
749
查看次数

现代DBMS是否包括短路布尔评估?

许多现代编程语言都有短路布尔评估,如下所示:

if (x() OR y())
Run Code Online (Sandbox Code Playgroud)

如果x()返回true,y()则永远不会评估.

现代DBMS(SQL Server,Sybase,Oracle,DB2等)上的SQL是否具有此属性?

特别是如果布尔语句的左侧是布尔常量,它是否会被短路?


相关:所有编程语言都有布尔短路评估吗?

sql database optimization

5
推荐指数
1
解决办法
635
查看次数

if(A)那么if(B)和if(A和B)之间有什么区别?

if(A) then if(B)

VS

if(A and B)

哪个更好用,为什么?

algorithm logic

3
推荐指数
1
解决办法
119
查看次数

标签 统计

algorithm ×1

csh ×1

database ×1

javascript ×1

logic ×1

operators ×1

optimization ×1

sql ×1