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("沒經過"); // "沒經過" }