首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >迭代truthy/False值集合

迭代truthy/False值集合
EN

Stack Overflow用户
提问于 2015-05-23 00:28:10
回答 1查看 127关注 0票数 0

对于应该从集合中返回真值/假值的学校作业,我有一些突出的要求。以下是突出的要求:

1)应传递所有真实结果的集合

2)应该传递一个包含真/假混合结果的集合

3)应传递一个包含一个字符串真值的集合

4)应传递一个包含一个匹配值的集合

5)应将结果强制转换为布尔值

6)应在未提供回调的情况下工作

我对Javascript真的很陌生,所以我不确定上面的所有功能是否都可以在同一个函数中完成,但这就是我如何理解赋值的。这是我到目前为止所知道的:

代码语言:javascript
复制
  myCustomForEach = function(collection, iterator) {
      for(var val in collection){
          if (iterator(collection[val])) {
              return true;
          } else {
              return false;
          }
      }
  };

这是我需要帮助的函数:

代码语言:javascript
复制
 myTruthTest = function(collection, iterator) {
     var result = _.every(collection, iterator);
     if (result) {
         return true;
     } else {
         return false;
     }
 };

我不需要使用定制的forEach,但我不能使用任何内置函数。我是想过头了,还是认为这需要多个函数才能达到所需的结果?非常感谢您的帮助。

EN

回答 1

Stack Overflow用户

发布于 2015-05-23 00:35:45

您可以使用内置的过滤函数:

代码语言:javascript
复制
var myTruthTest = function(collection, iterator) {
    return !!collection.filter(function(item) {
        return !!item || iterator && iterator(item);
    }).length;
};
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30401686

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档