当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


underscore.js _.every用法及代码示例


Underscore.js 是一个 JavaScript 库,它提供了许多有用的函数,即使不使用任何内置对象,也能在很大程度上帮助编程,例如映射、过滤器、调用等。 _.every()函数用于测试列表中的所有元素是否可以通过给定的测试。如果至少有一个元素未满足给定测试,它将停止并返回‘false’。当列表的所有元素都传递给函数/迭代并且没有更多元素剩余时,_.every 函数将遍历并且值 false 尚未作为答案返回,然后返回 true 作为最终答案。将数字、字符、数组、对象等传递给 _.every 函数。此外,还可以将 _.every() 函数一起使用,例如在 if 循环等中。

用法:

_.every(list, [predicate], [context])

参数:该函数接受如上所述和如下所述的三个参数:

  • List:该参数用于设置元素列表。
  • Predicate:该参数用于测试条件。
  • Context:该参数用于显示内容。

返回值:返回值是‘true’(当列表中的每个元素满足给定条件时)或‘false’(当至少一个元素不满足条件时)将数组传递给 _every function():._every()函数从列表中一一取出元素,并对代码执行指定的操作。下面的示例包含查找列表中所有有效或无效元素的操作。有效意味着它们不包含Null、Blank、False等。遍历并检查所有元素后,每个函数结束。在这里,即使单个元素无效,那么答案也是错误的。

例子:

html


<html>
    <head>
        <script type="text/javascript" src = 
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
        </script>
        <script type="text/javascript" src = 
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js"></script>
    </head>  
    <body>
        <script type="text/javascript">
              var arrayvalues = [false, true, 'yes', null, 1];
              console.log(_.every(arrayvalues, function (value) {
                  return (value);
              }));
        </script>
    </body> 
</html>

输出: 将数字列表传递给 _.every() 函数:传递一个数字列表并对其进行简单的操作。下面的例子用于判断一个数是否为偶数。如果列表中的所有数字都是偶数,则输出为真的否则错误的.例子:

html


<html>  
    <head>
        <script type="text/javascript" src = 
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
        </script>
        <script type="text/javascript" src = 
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
        </script>
    </head>      
    <body>
        <script type="text/javascript">
            console.log(_.every([2, 4, 5], function(num) { return num % 2 == 0; }));
        </script>
    </body> 
</html>

输出: 将结构传递给 _.every() 函数:首先声明数组(数组的名称是people)。选择一项条件进行检查有长毛。 Console.log显示最终答案。例子:

html


<html>  
    <head>
        <script type="text/javascript" src = 
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
        </script>
        <script type="text/javascript" src = 
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
        </script>
    </head>      
    <body>
        <script type="text/javascript">
            var people = [
                {name: 'sakshi', car: ''},
                {name: 'aishwarya', car: true},
                {name: 'akansha', car: true},
                {name: 'preeti', car: true}
            ],
       
            hasLongHairs = function (value) {
                return (value.car !== '');
            };
      
            console.log(_.every(people, hasLongHairs));
        </script>
    </body> 
</html>

输出: 一起使用两个 _.every() 函数:将不同的对象传递给每个 _.every() 函数,然后使用逻辑运算符(如&&,||,!等等。这里,object1 和 arralist1 包含所有 true 值,因此两个 true 的结果也将是 true。因此,满足第一个条件。 object2 包含‘null’,arraylist2 也包含‘null’,因此它们无效。在每个 _.every() 函数之前使用“!”,这样结果就是两个真值。例子:

html


<html>  
    <head>
        <script type="text/javascript" src = 
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
        </script>
        <script type="text/javascript" src = 
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
        </script>
    </head>      
    <body>
        <script type="text/javascript">
             var arraylist1 = [true];
             var arraylist2 = [null, {}, undefined, {}];
             var object1 = {prop1: true};
             var object2 = {
                    prop1: null,
                    prop2: true, prop3: true,
             }; 
             if (_.every(arraylist1) && _.every(object1)) {
                    console.log('arraylist1 and object1 are valid');
             }
             if (!_.every(arraylist2) && !_.every(object2)) {
                    console.log('arraylist2 and object2 do not have all items valid');
             }
        </script>
    </body> 
</html>

输出:



相关用法


注:本文由纯净天空筛选整理自Sakshi98大神的英文原创作品 Underscore.js _.every Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。