ES5新增数组常见方法(indexOf/forEach/map/filter/some/every)数组
demo: var arr = ["a","45",67,true,"hello",67,45,25,13,89]; console.log(arr.indexOf(67)); // 2 console.log(arr.indexOf("world")); // -1 console.log(arr.indexOf("a")); // 0 console.log(arr.indexOf(67,3)); // 5 console.log(arr.indexOf(67,6)); // -1
var f = arr.forEach(function(val,idx,self){ // console.log(val); // console.log(idx); }) console.log(f); // undefined
demo: "函数中的三个参数分别表明,该项的值,该项下标,数组自己" var m = arr.map(function(val,idx,self){ console.log(val,idx,self) return val + "ly"; }) console.log(arr); // Array(10) [ "a", "45", 67, true, "hello", 67, 45, 25, 13, 89 ] console.log(m); // Array(10) [ "aly", "45ly", "67ly", "truely", "helloly", "67ly", "45ly", "25ly", "13ly", "89ly" ]
demo:
var f = arr.filter(function(val,idx,self){ console.log(val,idx,self) return typeof val === "string"; }) console.log(f); // Array(3) [ "a", "45", "hello" ]
demo1: // 效果是咱们断定这个数组是否有一个负数 使用.some var arr = [1,58,125,-12,458,12]; var Boon = arr.some(function(e,i,arr){ return e < 0; }) console.log(Boon) // ture var scores = [5, 8, 3, 10]; var current = 7; demo2: function fn(score) { return score > current; } if (scores.some(fn)) { console.log("经过了!"); // "经过了! }
demo1: // 效果是咱们断定这个数组全是正数 使用.every var arr = [1,58,125,-12,458,12]; var Boon = arr.every(function(e,i,arr){ return e > 0; }) console.log(Boon) //false demo2: var scores = [5, 8, 3, 10]; var current = 7; function fn(score) { return score > current; } if (scores.every(fn)) { console.log("经过了!"); }else{ console.log("没经过"); // "没经过" }