【问题标题】:String check with if js shorthand [duplicate]使用if js速记进行字符串检查[重复]
【发布时间】:2013-06-18 18:09:02
【问题描述】:

我有var names = [];,并且只有在它不为空时才想将一些字符串推到那里。有没有办法在js中使用一些速记方法?)

我现在拥有的。

 if ("" != opportunityName) 
    {
    names.push(opportunityName);
    }

那别为我工作,它是推空字符串。

names.push(opportunityName || "");

【问题讨论】:

    标签: javascript shorthand-if


    【解决方案1】:

    你可以使用短路:

    opportunityName && names.push(opportunityName);
    

    只有当左边的操作数为真时,才会计算右边的操作数。

    【讨论】:

    • 谢谢,原来如此简单 =)
    • 它可以工作,但它比if (opportunityName) names.push(...); 略短,而且可读性较差......
    • @LarsH 如果花括号由代码样式强制执行,则更短,如果添加新行则更短。我个人总是使用花括号,所以像这样的短单行有时正是我所需要的。
    • @timenomad:一个有效的观点,在实践中......这样的编码风格并不少见。不过,我想说的是,如果一种编码风格对if 的“then”子句强制使用花括号,那么为了保持一致,它应该在&& 是这种模式的右手表达式周围强制使用括号仅用于短路:opportunityName && (names.push(opportunityName))。但是我还没有看到强制执行后者的编码样式。
    猜你喜欢
    • 1970-01-01
    • 2021-02-16
    • 2018-06-03
    • 1970-01-01
    • 2015-11-17
    • 2022-01-19
    • 2015-03-31
    • 2013-10-21
    • 1970-01-01
    相关资源
    最近更新 更多