Javascript 使用&;有条件地执行函数&;语法JS

Javascript 使用&;有条件地执行函数&;语法JS,javascript,Javascript,我可以这样执行函数吗 const test = testFunc() // returns "value" or undefined test && anotherFunction() 基本上,如果定义了test const,我想执行另一个函数(),否则就跳过它 我知道我可以用这样的东西: if (test) { anotherFunction() } 但我感兴趣的是为什么第一种方法不起作用 如果有人能给我解释一下if(){}和&之间的区别,我将不胜感激 //我很困

我可以这样执行函数吗

const test = testFunc() // returns "value" or undefined

test && anotherFunction()
基本上,如果定义了test const,我想执行另一个函数(),否则就跳过它

我知道我可以用这样的东西:

if (test) {
    anotherFunction()
}
但我感兴趣的是为什么第一种方法不起作用

如果有人能给我解释一下
if(){}
&
之间的区别,我将不胜感激

//我很困惑,因为如果我尝试使用我得到的第一种方法:

Expected an assignment or function call and instead saw an expression

在我的IDE中。

该方法将按预期工作。您可以看到以下两种情况,如您所述

第一种情况-testFunc返回一些值

const testFunc=()=>1
常数另一个函数=()=>2
常量test=testFunc()

test&&anotherFunction()
如果
testFunc()
返回
undefined
则不会调用
anotherFunction()expecting@jay_dtr这就是你的行为。那么你的问题是什么?这回答了你的问题吗?这是你的皮棉的规则。它期望将值存储到变量中。因此,如果你想使用这种模式,在你的短绒中改变规则,你的第二种情况看起来和第一种情况完全一样