相关疑难解决方法(0)

什么是"x && foo()"?

我看到其他地方说,

x && foo();

等于

if(x){
    foo();
}
Run Code Online (Sandbox Code Playgroud)

我测试了它,他们真的做了同样的事情.
但为什么?到底是x && foo()什么?

javascript conditional and-operator

43
推荐指数
3
解决办法
2905
查看次数

多么奇怪的语法?

我发现JQuery网站上的代码构造未知.经过一些格式化,它看起来像:

function (a,c) {
    c==null && (c=a,a=null);
    return arguments.length>0
        ? this.bind(b,a,c) 
        : this.trigger(b)
}
Run Code Online (Sandbox Code Playgroud)

该函数的第一行是什么意思?是任何技巧或标准JS代码构造?

javascript

12
推荐指数
2
解决办法
766
查看次数

<boolean expression> && statement()与if(<boolean expression>)语句()相同吗?

两个相同吗?

假设你有:

var x = true;
Run Code Online (Sandbox Code Playgroud)

然后你有一个:

x && doSomething();
Run Code Online (Sandbox Code Playgroud)

要么

if(x) doSomething();
Run Code Online (Sandbox Code Playgroud)

这两种语法之间有什么不同吗?我偶然发现了一点糖吗?

javascript syntax if-statement boolean syntactic-sugar

5
推荐指数
2
解决办法
1147
查看次数