ES5-新增数组方法
var arr = [1,3,5,7,7,5,3,1]; console.log(arr.indexOf(5)); // 2 - 查找数字5在数组中第一次出现的下标 console.log(arr.lastIndexOf(5)); // 5 - 查找数字5在数组中最后一次出现的位置 console.log(arr.indexOf(5,3)); // 5 - 从下标2开始查找数字5在数组中第一次出现的位置 console.log(arr.lastIndexOf(5,4)); // 2 - 从下标4开始查找数字5在数组中最后一次出现的下标 console.log(arr.indexOf("5")); // -1 - 数组中全是数字,找不到字符串5,所以返回-1
语法:
arr.forEach(function(值, 下标, 当前数组){ // 代码段 }); # 在这个方法中需要传入一个函数参数,这个函数的参数说明如下: # 参数1:数组遍历出来的每个值 # 参数2:可选项。数组遍历出来的每个值对应的下标 # 参数3:可选项。被遍历的当前数组
代码示范:
var arr = [1, 2, 3, 4, 5]; arr.forEach(function(x, index, a){ console.log(x + '|' + index + '|' + (a === arr)); }); // 输出为: // 1|0|true // 2|1|true // 3|2|true // 4|3|true // 5|4|true
arr.map(function(值,下标,当前数组){ return 新的值 - 通常新的值是由旧的值处理以后得到 });
代码示范:
var arr = [1, 2, 3, 4, 5]; var arr2 = arr.map(function(item){ return item*item; }); console.log(arr2); //[1, 4, 9, 16, 25]
使用说明:这个方法主要用于以同样的规则处理数组中的每个值,并组成新的数组返回
arr.filter(function(值, 下标, 当前数组){ return 筛选条件 });
代码示范:
var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; var arr2 = arr.filter(function(v, index) { return v>5 }); console.log(arr2); //[6, 7, 8, 9, 10]
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了