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


JavaScript Array some()用法及代码示例


下面是Array some()方法的示例。

  • 例:
    <script> 
        function checkAvailability(arr, val) { 
            return arr.some(function (arrVal) { 
                return val === arrVal; 
            }); 
        } 
        function func() { 
            // Original function 
            var arr = [2, 5, 8, 1, 4]; 
      
            // Checking for condition 
            document.write(checkAvailability(arr, 2)); 
            document.write("<br>"); 
            document.write(checkAvailability(arr, 87)); 
        } 
        func(); 
    </script>
  • 输出:
    true
    false
    

arr.some()方法检查数组的至少一个元素是否满足参数方法检查的条件。

用法:

arr.every(callback(element[, index[, array]])[, thisArg])

参数:此方法接受上述和以下所述的五个参数:

  • callback:此参数保存要为数组的每个元素调用的函数。
  • element:该参数保存当前正在处理的元素的值。
  • index:该参数是可选的,它保存从0开始的数组中currentValue元素的索引。
  • array:此参数是可选的,它包含在其上调用Array.every的完整数组。
  • thisArg:此参数是可选的,它保存要在执行回调函数时使用的上下文。如果传递了上下文,则每次调用该回调函数时都将使用该上下文,否则将使用undefined作为默认值。

返回值:即使数组的元素之一满足参数方法实现的条件(并且不检查剩余值),此方法也返回true。如果数组的任何元素均不满足条件,则返回false。



以下示例说明了JavaScript中的方法:

  • 范例1:在此示例中,方法some()检查是否有大于5的任何数字。由于存在满足此条件的元素,因此该方法返回true。
    function isGreaterThan5(element, index, array) 
    {
      return element > 5;
    }
    
    print([2, 5, 8, 1, 4].some(isGreaterThan5));
    

    输出:

    true
    
  • 范例2:在此示例中,方法some()检查大于5的任何数字。由于不存在满足此条件的元素,因此该方法返回false。
    function isGreaterThan5(element, index, array) 
    {
      return element > 5;
    }
    
    print([-2, 5, 3, 1, 4].some(isGreaterThan5)); 
    

    输出:

    false
    
  • 范例3:在此示例中,方法some()检查数组中的2和87。由于只有2个可用,因此该方法对第一个查询返回true,而对第二个查询返回false。
    var arr = [2, 5, 8, 1, 4]
    
    function checkAvailability(arr, val) 
    {
      return arr.some(
               function(arrVal) 
               {
                 return val === arrVal;
               } );
    }
    
    print(checkAvailability(arr, 2));
    print(checkAvailability(arr, 87));
    

    输出:

    true
    false
    

下面提供了上述方法的代码:

程序1:

<script> 
    function isGreaterThan5(element, index, array) { 
        return element > 5; 
    } 
    function func() { 
        // Original array 
        var array = [2, 5, 8, 1, 4]; 
  
        // Checking for condition in array 
        var value = array.some(isGreaterThan5); 
  
        document.write(value); 
    } 
    func(); 
</script>

输出:

true

程序2:

<script> 
    function isGreaterThan5(element, index, array) { 
        return element > 5; 
    } 
  
    function func() { 
        // Original array 
        var array = [-2, 5, 3, 1, 4]; 
  
        // Checking for condition in the array 
        var value = array.some(isGreaterThan5); 
  
        document.write(value); 
    } 
  
    func(); 
</script>

输出:

false

支持的浏览器:下面列出了JavaScript数组some()方法支持的浏览器:

  • 谷歌浏览器
  • IE浏览器
  • Mozila Firefox
  • Safari
  • Opera




相关用法


注:本文由纯净天空筛选整理自HGaur大神的英文原创作品 JavaScript Array some() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。