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 相关文章推荐
第1次亲密接触PHP5(2)
Oct 09 PHP
PHP学习之PHP表达式
Oct 09 PHP
第十节--抽象方法和抽象类
Nov 16 PHP
php SQL防注入代码集合
Apr 25 PHP
php中用foreach来操作数组的代码
Jul 17 PHP
Codeigniter购物车类不能添加中文的解决方法
Nov 29 PHP
php简单备份与还原MySql的方法
May 09 PHP
PHP批量修改文件名称的方法分析
Feb 27 PHP
深入解析Laravel5.5中的包自动发现Package Auto Discovery
Sep 13 PHP
详细解读php的命名空间(一)
Feb 21 PHP
PHP递归的三种常用方式
Feb 28 PHP
PHP反射实际应用示例
Apr 03 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数组函数序列之array_unique() - 去除数组中重复的元素值
2011/10/29 PHP
PHP将整个网站生成HTML纯静态网页的方法总结
2012/02/05 PHP
PHP中使用file_get_contents post数据代码例子
2015/02/13 PHP
PHP生成json和xml类型接口数据格式
2015/05/17 PHP
PHP使用Mysqli类库实现完美分页效果的方法
2016/04/07 PHP
PHP迭代与递归实现无限级分类
2017/08/28 PHP
PHP设计模式之装饰器(装饰者)模式(Decorator)入门与应用详解
2019/12/13 PHP
ASP中进行HTML数据及JS数据编码函数
2009/11/11 Javascript
javascript URL编码和解码使用说明
2010/04/12 Javascript
seaJs的模块定义和模块加载浅析
2014/06/06 Javascript
jQuery手机浏览器中拖拽动作的艰难性分析
2015/02/04 Javascript
js关于命名空间的函数实例
2015/02/05 Javascript
推荐10 个很棒的 jQuery 特效代码
2015/10/04 Javascript
javascript显示倒计时控制按钮的简单实现
2016/06/07 Javascript
javascript实现图片左右滚动效果【可自动滚动,有左右按钮】
2016/09/19 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
对比分析Django的Q查询及AngularJS的Datatables分页插件
2017/02/07 Javascript
js中split()方法得到的数组长度问题
2018/07/19 Javascript
微信小程序五子棋游戏AI实现方法【附demo源码下载】
2019/02/20 Javascript
微信小程序如何实现精确的日期时间选择器
2020/01/21 Javascript
使用JavaScript通过前端发送电子邮件
2020/05/22 Javascript
antd design table更改某行数据的样式操作
2020/10/31 Javascript
[01:03:03]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
使用wxpython实现的一个简单图片浏览器实例
2014/07/10 Python
python使用folium库绘制地图点击框
2018/09/21 Python
使用Python机器学习降低静态日志噪声
2018/09/29 Python
python中aioysql(异步操作MySQL)的方法
2019/04/11 Python
Flask配置Cors跨域的实现
2019/07/12 Python
pandas read_excel()和to_excel()函数解析
2019/09/19 Python
自定义Django_rest_framework_jwt登陆错误返回的解决
2020/10/18 Python
Tommy Hilfiger澳洲官网:美国高端休闲领导品牌
2020/12/16 全球购物
Java提供了哪些企业应用编程接口
2015/02/13 面试题
专营店会计助理岗位职责
2013/11/29 职场文书
行政文秘岗位职责范本
2014/02/10 职场文书
生态养殖创业计划书
2014/05/06 职场文书
军训决心书范文
2015/09/22 职场文书