由于JavaScript1.5对Array增加了一些比较好用的方法,如forEach,filter,map,every,som,indexOf,但是在还不支持JavaScript1.5的浏览器里是不能用得,所以,mootools它通过扩展Array来使其实现对这些方法的支持:
---------------------------------Array.js---------------------------------
Array对象的forEach方法
原型:Array.prototype.forEach(callBack: Function, thisObject: Object)
作用:对数组进行迭代操作,它有两个参数,第一个参数callBack是每次迭代所执行的函数,第二个参数thisObject可选,是要绑定到迭代执行的函数上的对象(也就是函数callBack中的this所指向的对象)
js 代码
-
- var arr = [1,2,3,4,5,6];
- arr.forEach(function(e){
- alert(e);
- });
-
-
- var arr = [1,2,3,4,5,6];
- var obj = "hello!";
- arr.forEach(function(e){
- alert(e+'--'+this);
- },obj);
-
-
- function putElt(element, index, array) {
- document.write("pos [" + index + "] in array (" + array + ") is " + element + '
- ');
- }
- [2, 5, 9].forEach(putElt);
Array对象的filter方法
原型:Array.prototype.filter(callBack: Function, thisObject: Object)
作用:迭代数组,每个元素作为参数执行callBack方法,由callBack方法作为数据过滤网,最后返回过滤后的一个数组
js 代码
- var result = [1,2,3,4,5].filter(function(e){
- return e > 3;
- });
- alert(result);
Array对象的map方法:
原型:Array.prototype.map(callBack: Function, thisObject: Object)
作用:迭代数组,每个元素作为参数执行callBack方法,由callBack方法对每个元素进行处理,最后返回处理后的一个数组
js 代码
- var result = [1,2,3,4,5].map(function(e){
- return e + 'px';
- });
- alert(result);
Array对象的every方法:
原型:Array.prototype.every(callBack: Function, thisObject: Object)
作用:它的意思就是:是否数组中的每个元素都通过了callBack的处理?如果是,则返回true,如果有一个不是,则立马返回false
js 代码
- var result = [1,2,3,4,5].every(function(e){
- return e > 3;
- });
- alert(result);
Array对象的some方法:
原型:Array.prototype.some(callBack: Function, thisObject: Object)
作用:它的意思就是:是否数组中的有元素通过了callBack的处理?如果有,则立马返回true,如果一个都没有,则返回false
js 代码
- var result = [1,2,3,4,5].every(function(e){
- return e > 3;
- });
- alert(result);
Array对象的indexOf方法:
原型:indexOf(searchElement: Object, fromIndex: Number)
作用:在数组中查找是否含有指定对象,如果有,返回对象所在的索引,否则返回-1;第二个参数是可选参数,如果指定的话,比如指定3,则表示从数组的第4个元素开始查找;默认从第0个元素开始查找。
js 代码
- var x1 = [1,2,3,4,5].indexOf(2);
- var x2 = [1,2,3,4,5].indexOf(2,3);
----------------------以下的方法是mootools提供的Array的专有扩展,和JavaScript标准无关--------------------------
each
作用:它的用法和作用与forEach一模一样,参看上文的forEach
copy
作用:复制数组元素到新的数组中;默认是全部复制,如果指定了开始索引和长度的话,则可以按指定形式复制
js 代码
- var a = [1,2,3,4,5,6];
- var b1 = a.copy();
- var b2 = a.copy(2,2);
remove
作用:删除数组中指定值的元素
js 代码
- var a = [1,2,2,3,4,5,6];
- var b = a.remove(4);
- var c = a.remove(2);
test
作用:查找数组中是否有指定的值
js 代码
- var a = [1,2,2,3,4,5,6];
- var b = a.remove(4);
- var c = a.remove(2);
extend
作用:把另一个数组追加到本数组后(不排除相同值的)
js 代码
- var a = [1,2,3,4];
- var b = [1,11,12];
- a.extend(b);
- alert(a);
associate
作用:把另一个数组中的值作为key,本数组中的值做为值,组成一个键值对象(长度为两者中较小的那个)
js 代码
- var v = [1,2,3,4,5];
- var k = ['one','two','three'];
- var kv = v.associate(k);
- alert(kv['one']);
- var v = [1,2];
- var k = ['one','two','three'];
- var kv = v.associate(k);
- alert(kv['one']);
- alert(kv['three']);
$A
作用:和Array的copy方法是一样的作用
js 代码
- var a = [1,2,3,4];
- var b = $A(a);
- var c = $A(a,1,2);
$each
作用:功能基本和Array的forEach方法相同,官方文档上说可用于非常规数组的迭代,如由getElemntsByTagName调用产生的结果,以及参数数组arguments等。不过管它常规不常规,用起来的形式还是一样的
js 代码
- var a = [1,2,3,4];
- $each(a,function(e){
- alert(e);
- });
恩,Array部分终于看好了,自己写的语言表达上感觉有些地方有欠缺,呵呵。。。
分享到:
相关推荐
mootools详细教程 ...mootools框架【三】-Array篇: 方法完全解析 mootools框架【三】-Array篇: 主要方法测试实例 mootools框架【四】-Function篇: 主要方法解析 mootools框架【五】-String篇: 方法完全解析
mootools-1.2.2-core-nc
mootools-release-1.11
mootools,Javascript只能提示工具所必须的js文件
mootools-12-cheat-sheet
开源js框架,非常不错,没什么很多介绍的,如果你是做web开发的,千万不要错过
Mootools从Prototype.js中汲取了许多有益的设计理念,语法也和其极其类似。但它提供的功能要比Prototype.js多,整体设计也比Prototype.js要相对完善,功能更强大,比如增加了动画特效、拖放操作等等。总之,Mootools...
MooTools1.4中文PDF手册+MooTools-Core-1.5.1.js
mootools-core-1.4.5-full-compat.js
Ajax-mootools-doc教程--手册.rar
python库。 资源全名:django-mootools-behavior-0.1.tar.gz
MooTools (which stands for My Object-Oriented "JavaScript" Tools) is a lightweight, modular, object-oriented JavaScript framework. It greatly speeds up and enhances the development cycle of feature-...
mootools备忘单,mootools常用的一些东西
前端项目-mootools-more,mootools是一个紧凑的、模块化的、面向对象的javascript框架,专为中级到高级的javascript开发人员设计。
mootools-中文教程
mootools插件 1.5.1 最新版下载,目前,mootools插件的最新版本是1.5.1,这个插件实现的功能不亚于jquery,是一款同样优秀的js插件,为了大家方便,在此与大家... mootools JS文件在mootools-core-1.5.1\dist目录下。
内含: 01-native.js ...04-array.js 05-browser.js 06-window.js 07-document.js 08-function.js 09-number.js 10-string.js 11-event.js 12-class.js 13-class.extras.js mootools1.2中文文档(html版)
包含mootools-core.js,mootools-core-compat.js,mootools-yui-compressed.js
mootools1.4.5英文CHM帮助文档
MooTools是一个简洁,模块化,面向对象的JavaScript框架。它能够帮助你更快,更简单地编写可扩展和兼容性强的 JavaScript代码。Mootools从Prototype.js中汲取了许多有益的设计理念,语法也和其极其类似。但它提供的...