JavaScript、jQuery、fish的遍历方法(each、forEach)总结
起因
在工作中,需要在遍历的dom中找到第一个并做下操作然后退出遍历,我首先想到了用each方法,但由于无论是公用的jQuery组件还是公司的fish组件。我都忘记了怎么去退出遍历,所以就有了这篇帖子。
目的
本文的目的是总结一下无论是数组还是dom,关于他们的遍历方法。
数组方法(ES5)
Array.prototype.forEach()
语法
array.forEach(callback[, thisArg])
callback函数参数
第一个参数:当前项
第二个参数:当前项的索引
第三个参数:数组本身
thisArg参数
这个参数是可选参数。
主要用于绑定函数内this的作用域,否则你在函数内调用this,this指代全局对象Window(ES3)或者undefined(ES5严格模式下)
关于中断(MDN原话)
没有办法中止或者跳出 forEach 循环,除了抛出一个异常。如果你需要这样,使用forEach()方法是错误的,你可以用一个简单的循环作为替代。如果您正在测试一个数组里的元素是否符合某条件,且需要返回一个布尔值,那么可使用 Array.every或 Array.some。
jQuery方法
语法
.each()
作用
用来遍历dom
用法
$(dom).each( function(index, Element) ) { do Something... }
参数
第一个参数:当前索引,从0开始
第二个参数:指被当前迭代的元素,与在函数体内的this等价
关于中断
可以通过返回false以便在函数体内终止循环
fish方法
语法
.each()
作用
用来遍历dom
用法
fish.all(dom).each(function(Parameter) {do Something...})
参数(确实和数组方法的forEach很像)
第一个参数:当前项
第二个参数:当前项的索引
第三个参数:数组本身 (等价于函数中的this)
关于中断
可以通过返回false以便在函数体内终止循环
for方法
语法
for(var i = 0; i < someArray.length; i++) { doSomething... }
作用
循环
关于中断
break; 语法可以完成中断
return; 语法直接报错(未捕获的语法错误: 非法返回声明)
JavaScript、jQuery、fish的遍历方法(each、forEach)总结的更多相关文章
- javascript数组常用的遍历方法
本篇文章给大家带来的内容是关于javascript数组常用的遍历方法(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 前言 本文主要介绍数组常见遍历方法:forEach.m ...
- JavaScript&jQuery获取url参数方法
JavaScript&jQuery获取url参数方法 function getUrlParam(name){ var reg = new RegExp("(^|&)" ...
- JavaScript中数组的迭代方法:forEach、map、filter、reduce、every、some、for in、for of
JavaScript中有非常多数组迭代方法,这里基本上吧所有的都介绍全了,我项目中比较喜欢的是forEach. 7.for in (for-in循环实际是为循环对象而设计的,for in也可以循环数组 ...
- 一张图看懂JavaScript中数组的迭代方法:forEach、map、filter、reduce、every、some
好吧,竟然不能单发一张图,不够200字啊不够200字! 在<JavaScript高级程序设计>中,分门别类介绍了非常多数组方法,其中迭代方法里面有6种,这6种方法在实际项目有着非常广泛的作 ...
- jquery 中 eq()遍历方法 和:eq()选择器的区别
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- 两种QMultiMap的遍历方法(最好使用只读遍历器)
留个爪,备查 QMultiMap<QString, QString>& remote_map = my_obj->m_MapVersion; // ccc 这里体现了引用的好 ...
- jQuery通用遍历方法each的实现
each介绍 jQuery 的 each 方法,作为一个通用遍历方法,可用于遍历对象和数组. 语法为: jQuery.each(object, [callback]) 回调函数拥有两个参数:第一个为对 ...
- Jquery中each的三种遍历方法
Jquery中each的三种遍历方法 $.post("urladdr", { "data" : "data" }, function(dat ...
- jQuery通用的全局遍历方法$.each()用法实例
1.jQuery通用的全局遍历方法$.each()用法 2. test.json文件代码: 3. html代码 4.jQuery代码 <script src="jquery-1.3.1 ...
随机推荐
- JSP 登录与注册的小案例之二(无验证码,前端拦截空参)
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http:// ...
- SLP测试记录
个人感觉来说这个游戏对我没有什么吸引力...完全不知道用户需求在哪...是我最不喜欢的一个游戏 不过听制作团队之前的介绍,这应该不算是一个游戏,而是一个游戏练习器?所以从游戏的角度来评判的话感觉有很多 ...
- @overrive报错解决方案
有时将项目移到另一个环境里出现@overrive报错的情况,可以看看eclipse工具的编译设置,将编译版本设置高点.
- DNS 中的协议字段详细定义
DNS中的协议字段定义 Table of Contents 1 概述 2 DNS Classes 3 DNS OpCodes 4 DNS RCODEs 5 DNS Label Types 6 DNS资 ...
- Design and Analysis of Algorithms_Fundamentals of the Analysis of Algorithm Efficiency
I collect and make up this pseudocode from the book: <<Introduction to the Design and Analysis ...
- php json 格式化
header('content-type:application/json;charset=utf8'); $arr = array( 'status' => true, 'errMsg' =& ...
- Android 多媒体视频播放一( 多媒体理解与经验分享)
前言 说到android的多媒体,一把辛酸一把泪,当初听说会多媒体的比较牛掰,公司也有需求,于是乎我也积极的加入研究android多媒体的行列,记得以前刚接触的时候,最开始还是比较头大的,主要是但是很 ...
- Ubuntu常用软件安装
1.好用的截图Shutter,sudo apt-get install shutter
- MyBatis学习教程
http://www.yihaomen.com/article/java/302.htm http://www.yihaomen.com/article/java/303.htm http://www ...
- XAF 如何基于业务规则禁用属性
// Developer Express Code Central Example: // How to: Disable Property Editors Based on a Business R ...