【问题标题】:Javascript : skip calling the chaining methods based on a condtion dynamicallyJavascript:跳过根据条件动态调用链接方法
【发布时间】:2022-06-26 01:06:59
【问题描述】:

我有一个对象数组,我在数组上调用了一系列方法。我想根据条件跳过方法之间。是否有一种通用的方法来处理它而不是使用 if/else 块?

当一个过滤器被应用时我想在这个数组中调用过滤器方法,当过滤器没有被应用时我想跳过那个。

// when filter is applied
    salesActivityTypes
         .filter(s=>s.selected)
         .map(key => key.name);

//when filter not applied
    salesActivityTypes
         .map(key => key.name);

我不想使用 if/else 块和复制粘贴相同的代码两次。有没有更好的处理方法?

方法调用的顺序很重要,不应该改变

【问题讨论】:

    标签: javascript arrays higher-order-functions method-chaining


    【解决方案1】:

    只需在 .filter 回调中添加另一个检查过滤是否处于活动状态。

    salesActivityTypes
         .filter(s => filteringActive ? s.selected : true)
         .map(key => key.name);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-04-12
      • 1970-01-01
      • 2015-01-21
      • 2019-02-23
      • 1970-01-01
      • 2015-11-09
      • 1970-01-01
      相关资源
      最近更新 更多