本文地址:[http://blog.csdn.net/sushengmiyan/article/details/39009555](http://blog.csdn.net/sushengmiyan/article/details/39009555)
sencha官方API:[http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext-method-each](http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext-method-each)
本文作者:[sushengmiyan](http://blog.csdn.net/sushengmiyan)
------------------------------------------------------------------------------------------------------------------------------------
看一下官方的介绍:
Iterates an array or an iterable value and invoke the given callback function for each item.
遍历所有可以循环的数组或者可迭代变量,并且执行给定的回调函数来处理每一个成员。
有一个简单的数组的例子如下:
~~~
var countries = ['Vietnam', 'Singapore', 'United States', 'Russia'];
Ext.Array.each(countries, function(name, index, countriesItSelf) {
console.log(name);
});
var sum = function() {
var sum = 0;
Ext.Array.each(arguments, function(value) {
sum += value;
});
return sum;
};
sum(1, 2, 3); // returns 6
~~~
The iteration can be stopped by returning false in the function callback.//通过设置返回值false来结束迭代。
Ext.each is alias for Ext.Array.each//Ext.each方法是ext.Array.each的别名。
参数介绍:
iterable :就是你要进行迭代的object,如果不可循环,就只执行一次了。
fn:回调函数,当遍历一次的时候就执行一次,函数包含三个参数
item,就是每次遍历的值
index,当前值的序号index
allItems:就是当前的数组对象本身。
返回值:
当想结束的时候就返回false就可以了。
实例演示:
1.使用cmd生成一个默认的程序
2.在\app\view\main文件夹下的MainController.js中修改onClickButton方法。
如下:
~~~
onClickButton: function () {
//Ext.Msg.confirm('Confirm', 'Are you sure?', 'onConfirm', this);
var StudentsJSON = {
student:[{
name: '张三',
studentid: 200801,
grade: 80
},{
name: '李四',
studentid: 200802,
grade: 90
},{
name: '王五',
studentid: 200803,
grade: 90
},{
name: '李二麻子',
studentid: 200804,
grade: 90
}]
};
Ext.each(StudentsJSON.student, function(student, index) {
alert(student.name);
if (student.studentid == '200803') {
alert('下一个是李二麻子,但是我不让他显示了');
return false; // 这里设置出口
}});
}
~~~
显示效果如下:
![](https://box.kancloud.cn/2016-02-03_56b214e9a738e.jpg)
点击button之后:
![](https://box.kancloud.cn/2016-02-03_56b214e9b8821.jpg)
最后是:
![](https://box.kancloud.cn/2016-02-03_56b214e9c5233.jpg)
- 前言
- [EXtJS5学习笔记]第一节 Sencha Cmd 学习笔记 简介 Sencha Cmd是什么
- [ExtJS5学习笔记]第二节 Sencha Cmd 学习笔记 使你的sencha cmd跑起来
- [ExtJS5学习笔记]第三节 sencha cmd学习笔记 生成应用程序构建的内部细节
- [ExtJS5学习笔记]第四节 欢迎来到extjs5-手把手教你实现你的第一个应用
- [ExtJS5学习笔记]第五节 使用fontawesome给你的extjs5应用增加字体图标
- [ExtJS5学习笔记]第六节 Extjs的类系统Class System命名规则及定义和调试
- [ExtJS5学习笔记]第七节 Extjs5的组件components及其模板事件方法学习
- [ExtJS5学习笔记]第八节 Extjs5的Ext.toolbar.Toolbar工具条组件及其应用
- [ExtJS5学习笔记]第九节 Extjs5的mvc与mvvm框架结构简介
- [ExtJS5学习笔记]第十节 Extjs5新增特性之ViewModel和DataBinding
- [ExtJS5学习笔记]第十一节 Extjs5MVVM模式下系统登录实例
- [ExtJS5学习笔记]第十二节 Extjs5开发遇到的问题列表记录
- [ExtJS5学习笔记]第十三节 Extjs5的Ext.each方法学习
- [ExtJS5学习笔记]第十四节 Extjs5中data数据源store和datapanel学习
- [ExtJS5学习笔记]第十五节 Extjs5表格显示不友好?panel的frame属性在作怪
- [ExtJS5学习笔记]第十六节 Extjs5使用panel新增的ViewModel属性绑定数据
- [ExtJS5学习笔记]第十七节 Extjs5的panel组件增加accodion成为折叠导航栏
- [ExtJS5学习笔记]第十八节 Extjs5的panel的dockeditems属性配置toolbar
- [ExtJS5学习笔记]第十九节 Extjs5中通过设置form.Panel的FieldSet集合属性控制多个field集合
- [ExtJS5学习笔记]第二十节 Extjs5配合数组的push方法,动态创建并加载组件
- [ExtJS5学习笔记]第二十一节 Extjs5中使用config配置给ext.widget或者create方法传递参数
- [ExtJS5学习笔记]第二十二节 Extjs5中使用beforeLabelTpl配置给标签增加必填选项星号标志
- [ExtJS5学习笔记]第二十三节 Extjs5中表格gridpanel的列格式设置
- [ExtJS5学习笔记]第二十四节 Extjs5中表格gridpanel或者表单数据后台传输remoteFilter设置
- [ExtJS5学习笔记]第二十五节 利用window.open()函数实现ExtJS5的登陆页面跳转
- [EXTJS5学习笔记]第二十六节 在eclipse/myeclipse中使用sencha extjs的插件
- [ExtJS5学习笔记]第二十七节 CMD打包错误 Error C2009: YUI Parse Error (identifier is a reserved word => debugger;)
- [ExtJS5学习笔记]第二十八节 sencha ext js 5.1.0发布版本正式发布 extjs doc下载地址
- [ExtJS5学习笔记]第二十九节 sencha ext js 5.1.0中动态更换皮肤主题
- [ExtJS5学习笔记]第三十节 sencha extjs 5表格gridpanel分组汇总
- [ExtJS5学习笔记]第三十一节 sencha extjs 5使用cmd生成的工程部署到tomcat服务器
- [ExtJS5学习笔记]第三十二节 sencha extjs 5与struts2的ajax交互配置
- [ExtJS5学习笔记]第三十五节 sencha extjs 5 组件查询方法总结