Dojo 扩展 javascript 核心库 - 数组方法(Array)
来源:互联网 发布:sql 3个引号 编辑:程序博客网 时间:2024/04/29 13:31
Javascript 1.6 定义了一些新的数组方法, 但是并不是所有浏览器都实现了 Javascript 1.6 , Dojo 为没有实现的浏览器提供扩展来实现它们.
-- dojo.indexOf 返回数组中匹配元素首次出现的位置, 未找到返回 -1
-- dojo.lastIndexOf 返回数组中匹配元素最后一次出现的位置, 未找到返回 -1
-- dojo.every 测试是否数组中所有元素都使测试函数返回 true
-- dojo.some 测试是否数组中存在元素使得测试函数返回 true
-- dojo.filter 返回一个新数组, 其元素是原数组中通过 filter 函数的元素
-- dojo.map 创建返回一个新数组, 其元素是用原数组每个元素调用传入函数的返回值
-- dojo.forEach 将数组中的每一个元素传给一个函数
除了前两个函数, 其它所有函数都有相同的函数签名, 如: dojo.every(array, func, context). array 是要操作的数组, func 是应用在每个数组项上的函数, 最后一个 context 则是执行 func 的上下文, 是可选参数.
如果传入了上下文参数, 获得回调函数可以用 dojo.hitch(context, func) 来获得.
例:
var arr = [1, 2, 3];var doubleArray = dojo.map(arr, function(x) { return x *= 2 });dojo.forEach(doubleArray, function(x) { console.log(x) });// Output: 2, 4, 6
对于第二个参数函数有个有趣儿的用法, 当第二个参数是一个字符串的时候, item & index & array 这三个字符串就有了特殊的意义
-- item: 当前正在操作的某一个数组元素.
-- index: 当前正在操作的数组元素的索引
-- array: 数组对象
例:
var arr = [1, 2, 3];var doubleArray = dojo.map(arr, "return item * 2");dojo.forEach(doubleArray, "console.log(index + ' = ' + item)");// Output: // 0 = 2// 1 = 4// 2 = 6
(访问 https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array 查看详细 Javascript 1.6 Array)
- Dojo 扩展 javascript 核心库 - 数组方法(Array)
- Dojo 扩展 javascript 核心库 - dojo.hitch
- Dojo 扩展 javascript 核心库 - dojo.hitch
- Dojo 扩展 javascript 核心库 - dojo.hitch
- Javascript数组Array的forEach扩展方法
- Dojo 扩展 javascript 核心库 - 组合, 结构化与复制对象
- js Array 数组方法扩展
- dojo 数组(Array)
- Javascript数组Array的some扩展函数
- javascript Array 数组常用方法
- javascript---数组array方法reduce()
- javascript 数组array方法汇总
- JavaScript Array 可以扩展的几个方法
- Javascript中数组(Array)常用的方法
- javascript中数组Array的方法
- javascript Array 数组的迭代方法
- Javascript数组Array的forEach方法
- 关于javaScript Array数组方法的应用
- 随想2
- Magento清除缓存的几种方法
- Android4.0 adb 路径问题
- Linux平台代码覆盖率测试工具GCOV简介
- 有感3
- Dojo 扩展 javascript 核心库 - 数组方法(Array)
- Linux平台代码覆盖率测试工具GCOV的前端工具LCOV简介
- Eclipse 下 J2ME 环境搭建
- 设置远程登录
- 设计模式区分
- static关键字用法小结【转帖】
- 传参时参数有空格的情况
- Magento getModel getSingleton等常用函数详解
- win7有杂音----彻底解决