【问题标题】:Javascript - How to return string from a function by using ternary operatorJavascript - 如何使用三元运算符从函数返回字符串
【发布时间】:2020-03-24 13:59:54
【问题描述】:

我需要在我的 array 中从最后一个 product 获取字符串/标题,但只有在我过滤所有项目以仅获得 active 产品之后,我已经尝试过这样的事情:

function getProductNoteTitle() {
if (data.product && data.product.length>0) {
  var result = data.product.filter(
    item => item.productStatusId === ProductStatusEnum.Active
  );
  result.length > 0 ? return([result.length - 1].title) : return 'Not Set';
 }
}

但这行不通,因为我在这一行出现错误:

result.length > 0 ? return([result.length - 1].title) : return 'Not Set';

表示预期的表达式。

【问题讨论】:

  • return 不是构成表达式的关键字,您不能将其用作其他内容的操作数。您想改为 return (… ? … : …); - 请注意 return …; 是一个声明。
  • @Bergi 真正的伙伴!非常感谢这个很好的解释!

标签: javascript ecmascript-6 conditional-operator


【解决方案1】:

以下是否适合您:

return result.length > 0 ? [result.length - 1].title : 'Not Set';

【讨论】:

    猜你喜欢
    • 2020-02-09
    • 1970-01-01
    • 2017-03-28
    • 1970-01-01
    • 1970-01-01
    • 2017-01-17
    • 2017-05-12
    • 2020-09-17
    • 2014-02-19
    相关资源
    最近更新 更多