首页 > 代码库 > JavaScript中数组高级编程实践-2
JavaScript中数组高级编程实践-2
我们来 看 EcmaScript5 规范中的 数组新的API ,它们是非常有用的,
介绍完这一部分 ,我们将用 Array 数组 这个对象 来构建 一个类似于Java中ArrayList 类,
以便于封装 通用 的逻辑,实现代码复用。
API :
/** @param {Function} callback @param {Object} [initialValue] @return {Object} */ Array.prototype.reduce = function(callback,initialValue) {}; /** @param {Function} callback @param {Object} [initialValue] @return {Object} */ Array.prototype.reduceRight = function(callback,initialValue) {}; /** @param {Object} searchElement @param {number} [fromIndex] @return {number} */ Array.prototype.indexOf = function(searchElement,fromIndex) {}; /** @param {Object} searchElement @param {number} [fromIndex] @return {number} */ Array.prototype.lastIndexOf = function(searchElement,fromIndex) {}; /** @param {Function} callback @param {Object} [thisObject] @return {boolean} */ Array.prototype.every = function(callback,thisObject) {}; /** @param {Function} callback @param {Object} [thisObject] @return {Array} */ Array.prototype.filter = function(callback,thisObject) {}; /** @param {Function} callback @param {Object} [thisObject] @return {void} */ Array.prototype.forEach = function(callback,thisObject) {}; /** @param {Function} callback @param {Object} [thisObject] @return {Array} */ Array.prototype.map = function(callback,thisObject) {}; /** @param {Function} callback @param {Object} [thisObject] @return {boolean} */ Array.prototype.some = function(callback,thisObject) {}; /** @param {Object} object @return {boolean} */ Array.prototype.isArray = function(object) {};
使用:
/** *@class MyEcmaScript5 *@description *@time 2014-09-16 21:38 *@author StarZou **/ // 定义一个数组,存储不同数据类型的元素 var array = [8, 2, 1, 5], array2 = [ [0, 1], [1, 2], [2, 3] ], value; /// Array.prototype.reduce = function(callback,initialValue) {}; // 化解数组: // 调用reduce 方法提供的回调函数, // 总共调用 数组的lenght - 1次 回调函数 // 第一次时 previousValue 为 initialValue // 此后 reduce方法的返回值 作为 previousValue // reduceRight 则从数组最右边开始,进行上述操作 // 数组中元素累加 value = http://www.mamicode.com/array.reduce(function (previousValue, currentValue, index, array) {>
运行结果:
JavaScript中数组高级编程实践-2
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。