javascript some()函数用法详解


Posted in PHP onNovember 13, 2014

参数说明
callback: 要对每个数组元素执行的回调函数。
thisObject : 在执行回调函数时定义的this对象。

功能说明
对数组中的每个元素都执行一次指定的函数(callback),直到此函数返回 true,如果发现这个元素,some 将返回 true,如果回调函数对每个元素执行后都返回 false ,some 将返回 false。它只对数组中的非空元素执行指定的函数,没有赋值或者已经删除的元素将被忽略。

回调函数可以有三个参数:当前元素,当前元素的索引和当前的数组对象。

如参数 thisObject 被传递进来,它将被当做回调函数(callback)内部的 this 对象,如果没有传递或者为null,那么将会使用全局对象。

<script language="JavaScript" type="text/javascript"> 

if (!Array.prototype.some) 

{ 

    Array.prototype.some = function(fun /*, thisp*/) 

    { 

        var len = this.length; 

        if (typeof fun != "function") 

            throw new TypeError(); 

        var thisp = arguments[1]; 

        for (var i = 0; i < len; i++) 

        { 

            if (i in this && fun.call(thisp, this[i], i, this)) 

                return true; 

        } 

        return false; 

    }; 

} 

</script>

some 不会改变原有数组,记住:只有在回调函数执行前传入的数组元素才有效,在回调函数开始执行后才添加的元素将被忽略,而在回调函数开始执行到最后一个元素这一期间,数组元素被删除或者被更改的,将以回调函数访问到该元素的时间为准,被删除的元素将被忽略。

检查是否所有的数组元素都大于等于10

<script language="JavaScript" type="text/javascript">

if(!Array.prototype.some)

{

Array.prototype.some=function(fun)

{

var len=this.length;

if(typeof fun!="function")

throw new TypeError();

var thisp=arguments[1];for(var i=0;i<len;i++)

{

if(i in this&&fun.call(thisp,this[i],i,this))

return true;}

return false;};

}

function isBigEnough(element,index,array){return(element>=10);}

var passed=[2,5,8,1,4].some(isBigEnough);

document.writeln("[2, 5, 8, 1, 4].some(isBigEnough) :<strong>");

document.writeln(passed?'true':'false');

document.writeln("</strong><br />");

passed=[12,5,8,1,4].some(isBigEnough);

document.writeln("[12, 5, 8, 1, 4].some(isBigEnough) :<strong>");

document.writeln(passed?'true':'false');

document.writeln("</strong><br />");

</script>

function isBigEnough(element, index, array) {

 return (element >= 10);

}

var passed = [2, 5, 8, 1, 4].some(isBigEnough);

// passed is false

passed = [12, 5, 8, 1, 4].some(isBigEnough);

// passed is true

小伙伴们是否对some()函数有所了解了呢,有什么问题也可以给我留言

PHP 相关文章推荐
IIS7.X配置PHP运行环境小结
Jun 09 PHP
php的array数组和使用实例简明教程(容易理解)
Mar 20 PHP
Laravel 4 初级教程之安装及入门
Oct 30 PHP
百度地图API使用方法详解
Aug 25 PHP
PHP二分查找算法示例【递归与非递归方法】
Sep 29 PHP
PHP获取用户客户端真实IP的解决方案
Oct 10 PHP
php获取客户端IP及URL的方法示例
Feb 03 PHP
Yii CFileCache 获取不到值的原因分析
Feb 08 PHP
Smarty3配置及入门语法
Feb 22 PHP
php将html转为图片的实现方法
May 19 PHP
PHP实现RSA签名生成订单功能【支付宝示例】
Jun 06 PHP
Laravel中的chunk组块结果集处理与注意问题
Aug 15 PHP
php获取随机数组列表的方法
Nov 13 #PHP
php中chdir()函数用法实例
Nov 13 #PHP
php之readdir函数用法实例
Nov 13 #PHP
dedecms中使用php语句指南
Nov 13 #PHP
php 使用file_get_contents读取大文件的方法
Nov 13 #PHP
php合并数组中相同元素的方法
Nov 13 #PHP
php魔术变量用法实例详解
Nov 13 #PHP
You might like
PHP与SQL注入攻击[一]
2007/04/17 PHP
字符串长度函数strlen和mb_strlen的区别示例介绍
2014/09/09 PHP
php随机取mysql记录方法小结
2014/12/27 PHP
PHP判断数组是否为空的常用方法(五种方法)
2017/02/08 PHP
javascript 写类方式之十
2009/07/05 Javascript
jQuery为iframe的body添加click事件的实现代码
2011/04/07 Javascript
javascript表单验证 - Parsley.js使用和配置
2013/01/25 Javascript
深入分析下javascript中的[]()+!
2015/07/07 Javascript
JavaScript中的call方法和apply方法使用对比
2015/08/12 Javascript
jquery选择器中的空格与大于号&gt;、加号+与波浪号~的区别介绍
2016/06/24 Javascript
浅谈js中StringBuffer类的实现方法及使用
2016/09/02 Javascript
详解Vue中localstorage和sessionstorage的使用
2017/12/22 Javascript
vue-property-decorator用法详解
2019/12/12 Javascript
微信小程序背景音乐开发详解
2019/12/12 Javascript
简单了解前端渐进式框架VUE
2020/07/20 Javascript
Angular进行简单单元测试的实现方法实例
2020/08/16 Javascript
[10:28]2018DOTA2国际邀请赛寻真——VGJ.S寻梦之路
2018/08/15 DOTA
python初学之用户登录的实现过程(实例讲解)
2017/12/23 Python
Python查找两个有序列表中位数的方法【基于归并算法】
2018/04/20 Python
Anaconda 查看、创建、管理和使用python环境的方法
2019/12/03 Python
python 普通克里金(Kriging)法的实现
2019/12/19 Python
使用keras内置的模型进行图片预测实例
2020/06/17 Python
html5 Canvas画图教程(4)—未闭合的路径及渐变色的填充方法
2013/01/09 HTML / CSS
关键字final的用法
2013/10/02 面试题
网络书店创业计划书
2014/02/07 职场文书
入党推优材料
2014/06/02 职场文书
理财学专业自荐书
2014/06/28 职场文书
毕业生代领毕业材料的授权委托书
2014/09/29 职场文书
村党支部书记四风问题个人对照检查材料思想汇报
2014/10/06 职场文书
领导干部群众路线剖析材料
2014/10/09 职场文书
2015年保险业务员工作总结
2015/05/27 职场文书
新员工实习期个人工作总结
2015/10/15 职场文书
react 路由Link配置详解
2021/11/11 Javascript
攻略丨滑雪究竟该选哪款对讲机?
2022/02/18 无线电
GO语言字符串处理函数之处理Strings包
2022/04/14 Golang
springboot实现string转json json里面带数组
2022/06/16 Java/Android