javascript - 在 JS 中检查变量的简写语法?

标签 javascript shorthand

假设我们要在使用变量之前检查它是否已正确设置(不是未定义、不是空、不是 false...):

var myVar = getData();
if(myVar) {
    doSomething(myVar);
}

我们可以通过不声明 myVar 来缩短代码。但是,在本例中,getData() 被调用两次,并不理想。

if(getData()) doSomething(getData());
<小时/>

是否有其他替代方法可以保持此代码简短但又干净?

最佳答案

你并没有真正绕过这个变量。当然,你也可以这样做

var myVar = getData();
if (myVar) doSomething(myVar);

甚至

var myVar;
if (myVar = getData()) doSomething(myVar);

但基本上不会比这更好了。

如果您想避免在作用域中引入变量,您可以使用辅助函数来解决它 - 如果您发现自己一遍又一遍地这样做:

function maybeDo(val, action) {
    if (val) return action(val);
}
maybeDo(getData(), doSomething);

关于javascript - 在 JS 中检查变量的简写语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33127018/

相关文章:

javascript - 简写如果?返回 : null

javascript - 如何在 SAPUI5 V1.38.39 中从本地 JSON 文件在 Controller 中创建 JSON 模型?

javascript - 选择元素父级的父级

javascript - 侧边栏的切换按钮

使用 return 时的 PHP 速记 If/Else

javascript - 为像 php 这样的键填充一个 javascript 数组速记

javascript - 获取类包含给定字符串的元素的 ID

javascript - 将字符串转换为嵌套的 JSON 对象

jquery - jQuery 库如何使用 $ 代替 "JQuery"来引用对象?

用于生成css速记的php工具