[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; // 这里设置出口
       }});
    }

显示效果如下:

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

点击button之后:

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

最后是:

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




上一篇:[ExtJS5学习笔记]第十四节 Extjs5中data数据源store和datapanel学习


下一篇:[ExtJS5学习笔记]第六节 Extjs的类系统Class System命名规则及定义和调试