[ExtJS5学习笔记]第十三节 Extjs5的Ext.each方法学习

sencha官方API:http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext-method-each

本文作者: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; // 这里设置出口
       }});
    }

显示效果如下:

点击button之后:

最后是:

时间: 2025-01-30 01:44:57

[ExtJS5学习笔记]第十三节 Extjs5的Ext.each方法学习的相关文章

[ExtJS5学习笔记]第二十三节 Extjs5中表格gridpanel的列格式设置

官方文档: http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext.grid.column.Date 本文作者:sushengmiyan ------------------------------------------------------------------------------------------------------------------------------------ 在使用表格的时候,我们默认都是加载一些文本文字,

[ExtJS5学习笔记]第十节 Extjs5新增特性之ViewModel和DataBinding

本文作者:sushengmiyan -------------------------------------------------------------资源链接----------------------------------------------------------------------- 翻译来源:http://docs.sencha.com/extjs/5.0/application_architecture/view_models_data_binding.html AP

[ExtJS5学习笔记]第二十九节 sencha ext js 5.1.0中动态更换皮肤主题

本文作者:sushengmiyan ------------------------------------------------------------------------------------------------------------------------------------ 为方便起见,使用sencha cmd创建一个工程,使用app build命令build工程,使用web start命令启动服务. 好了,现在更改下main.js中的一点代码,增加如下内容到panel

[ExtJS5学习笔记]第十八节 Extjs5的panel的dockeditems属性配置toolbar

官方例子: http://docs.sencha.com/extjs/5.0/apidocs/#!/api/Ext.panel.Panel-cfg-dockedItems 本文作者:sushengmiyan ------------------------------------------------------------------------------------------------------------------------------------ 像Word办公软件一样,我

WPF and Silverlight学习笔记(十二)

WPF and Silverlight学习笔记(十二):WPF Panel内容模型.Decorator内容模型及其他 一.Panel内容模型 Panel内容模型指从 System.Windows.Controls.Panel继承的控件,这些控件都是容器,可以在内部 承载其他的控件和子容器.Panel内容模型包含的容器有: Canvas DockPanel Grid TabPanel ToolBarO verflowPanel UniformGrid StackPanel ToolBarPanel

VSTO学习笔记(十四)Excel数据透视表与PowerPivot

原文:VSTO学习笔记(十四)Excel数据透视表与PowerPivot 近期公司内部在做一种通用查询报表,方便人力资源分析.统计数据.由于之前公司系统中有一个类似的查询使用Excel数据透视表完成的,故我也打算借鉴一下. 测试代码下载    原有系统是使用VBA编写的,难以维护,且对新的操作系统如Windows 7.64位架构不支持,我准备用VSTO进行重写. 数据透视表是一种交互式的表,可以进行某些计算,如求和与计数等.所进行的计算与数据跟数据透视表中的排列有关. 数据透视表是一种完全自助式

VSTO 学习笔记(十)Office 2010 Ribbon开发

原文:VSTO 学习笔记(十)Office 2010 Ribbon开发 微软的Office系列办公套件从Office 2007开始首次引入了Ribbon导航菜单模式,其将一系列相关的功能集成在一个个Ribbon中,便于集中管理.操作.这种Ribbon是高度可定制的,用户可以将自己常用的功能进行单独设置,提高工作效率.但是由于Office 2003时代用户的操作习惯已经养成,结果到了Office 2007很多菜单.按钮都找不到了,着实有些尴尬.经过一段时间的适应,相信大多数用户已经习惯Ribbon

Mysql学习笔记(十)存储过程与函数 + 知识点补充(having与where的区别)

原文:Mysql学习笔记(十)存储过程与函数 + 知识点补充(having与where的区别) 学习内容:存储程序与函数...这一章学的我是云里雾里的... 1.存储过程...   Mysql存储过程是从mysql 5.0开始增加的一个新功能.存储过程的优点其实有很多,不过我觉得存储过程最重要的优点就是实现了SQL代码的封装,那么我们为什么需要封装SQL语句呢?原因就是当我们在面对一个庞大的数据库的时候,当我们使用外部程序去访问数据库的时候...我们总不能在外部程序中内嵌很多的SQL语句吧...

Mysql学习笔记(十四)备份与恢复

原文:Mysql学习笔记(十四)备份与恢复 学习内容: 1.数据库的重要数据备份... 2.什么时候需要使用到数据库备份.. 3.如何恢复备份的数据..   1.备份: 说到备份,相比大家都不应该陌生,比如说我们平时在为我们的电脑重新做系统的时候,那么我们保存在电脑里的重要文件我们都需要进行备份..或者是当我们在使用一键还原系统的时候,我们也需要进行备份..那么数据库也不例外,我们需要对数据库里面保存的重要数据进行备份..比如说一个大型的企业,那么必然会有自己的一个大型数据库,那么数据库管理员必