Array.prototype方法详解(上)
来源:互联网 发布:财务自由知乎 编辑:程序博客网 时间:2024/05/17 07:13
concat 方法:返回一个新数组,这个新数组是由两个或更多数组组合而成的。array1.concat([item1[, item2[, . . . [, itemN]]]])
var alpha = ['a', 'b', 'c'], numeric = [1, 2, 3];var alphaNumeric = alpha.concat(numeric);console.log(alphaNumeric); // Result: ['a', 'b', 'c', 1, 2, 3]
ever 方法:测试是否所有的数组中的元素通过提供实现的功能测试function isBigEnough(element, index, array) { return element >= 10;}[12, 5, 8, 130, 44].every(isBigEnough); // false[12, 54, 18, 130, 44].every(isBigEnough); // true
filter 方法:返回能通过测试的元素function isBigEnough(value) { return value >= 10;}var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);// filtered is [12, 130, 44]
forEach 方法:改变原数组,返回测试函数的结果
function logArrayElements(element, index, array) { console.log('a[' + index + '] = ' + element);}// Note elision, there is no member at 2 so it isn't visited[2, 5, , 9].forEach(logArrayElements);// logs:// a[0] = 2// a[1] = 5// a[3] = 9
indexOf 方法:在数组中查找,找到就返回下标,否则返回-1
var array = [2, 5, 9];array.indexOf(2); // 0array.indexOf(7); // -1array.indexOf(9, 2); // 2array.indexOf(2, -1); // -1array.indexOf(2, -3); // 0
join 方法:连接数组转换为字符串var a = ['Wind', 'Rain', 'Fire'];var myVar1 = a.join(); // assigns 'Wind,Rain,Fire' to myVar1var myVar2 = a.join(', '); // assigns 'Wind, Rain, Fire' to myVar2var myVar3 = a.join(' + '); // assigns 'Wind + Rain + Fire' to myVar3
lastIndexOf 方法:查找数组,返回与给定元素相同的最后一个元素的下标,否则返回-1
var array = [2, 5, 9, 2];array.lastIndexOf(2); // 3array.lastIndexOf(7); // -1array.lastIndexOf(2, 3); // 3array.lastIndexOf(2, 2); // 0array.lastIndexOf(2, -2); // 0array.lastIndexOf(2, -1); // 3
map 方法:创建在该数组的每个元素调用一个函数的结果提供了一个新数组var numbers = [1, 4, 9];var roots = numbers.map(Math.sqrt);// roots is now [1, 2, 3], numbers is still [1, 4, 9]
var kvArray = [{key:1, value:10}, {key:2, value:20}, {key:3, value: 30}];var reformattedArray = kvArray.map(function(obj){ var rObj = {}; rObj[obj.key] = obj.value; return rObj;});// reformattedArray is now [{1:10}, {2:20}, {3:30}], // kvArray is still [{key:1, value:10}, {key:2, value:20}, {key:3, value: 30}]
0 0
- Array.prototype方法详解(上)
- Array.prototype.slice.call()方法详解
- Array.prototype.slice.call()方法详解
- Array.prototype.slice.call()方法详解
- Array.prototype.map()详解
- Array.prototype.slice() 方法
- Array.prototype方法
- Array.prototype.slice.call()详解及转换数组的方法
- Array.prototype.slice.call()详解及转换数组的方法
- Array.prototype.slice.call()详解及转换数组的方法
- 【js】Array.prototype.reduce方法
- Array.prototype.splice方法重写
- Array.prototype.toString方法重写
- Array对象的方法实现(1)----Array.prototype.push和Array.prototype.concat(实现常规参数的功能)
- Array对象的方法实现(2)----Array.prototype.every和Array.prototype.fill(实现常规参数的功能)
- Array对象的方法实现(3)----Array.prototype.filter和Array.prototype.find(实现常规参数的功能)
- Array对象的方法实现(4)----Array.prototype.findIndex和Array.prototype.forEach(实现常规参数的功能)
- javascript中的prototype方法使用说明(详解)
- 自动处理键盘事件的第三方库 IQKeyboardManager
- 程序性能调优攻略
- 什么是LDAP
- linux网络编程之TCP/IP基础:ping命令解释
- 11gr2测试表自动按照月份分区
- Array.prototype方法详解(上)
- LINUX修改、增加IP的方法 ifconfig 两个ip地址 配置文件
- gitLab 需要的sshkeys
- ARM_s5pv210_arm_6(上)
- Java clone() 浅克隆与深度克隆
- Netty:ChannelPipeline
- 数据库面试题
- MD5加解密代码
- Android Studio 2.0 Preview发布,附下载地址,支持即时运行和GPU Profiler