?let arr = [22, 33, 44, 55, 11]
? ? ? ? ? ? // 1.forEach()图甜,遍歷數(shù)組
? ? ? ? function forEach(arr, callback) {
? ? ? ? ? ? for (let i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ? callback(arr[i], i)
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? forEach(arr, (item, index) => console.log(index + '--' + item))
? ? ? ? // 2.every()方法 檢查所有元素是否滿足指定規(guī)則
? ? ? ? function every(arr, callback) {
? ? ? ? ? ? for (let i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ? if (!callback(arr[i])) {
? ? ? ? ? ? ? ? ? ? return false
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ? return true
? ? ? ? }
? ? ? ? console.log(every(arr, num => num > 10));
? ? ? ? console.log(every(arr, num => num < 10));
? ? ? ? // 3.reduce() 方法,從左到右累加和
? ? ? ? function reduce(arr, callback, initNum) {
? ? ? ? ? ? for (let i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ? let r = callback(initNum, arr[i])
? ? ? ? ? ? ? ? initNum = r
? ? ? ? ? ? }
? ? ? ? ? ? return initNum
? ? ? ? }
? ? ? ? console.log(reduce(arr, (a, b) => a + b, 0));
? ? ? ? // 4.filter()方法
? ? ? ? // 用于過濾數(shù)組中的元素螃宙,返回過濾結(jié)果 ? 重新聲明一個新數(shù)組测摔,過濾后返回到新數(shù)組
? ? ? ? function filter(arr, callback) {
? ? ? ? ? ? let newArr = []; //聲明新數(shù)組
? ? ? ? ? ? for (let i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ? if (callback(arr[i])) { //如果他是true
? ? ? ? ? ? ? ? ? ? newArr.push(arr[i]) //加到新數(shù)組
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ? return newArr
? ? ? ? }
? ? ? ? let newArr = filter(arr, item => item % 2 == 0)
? ? ? ? console.log(newArr);
? ? ? ? // 5.find()方法置济,用于獲取數(shù)組中滿足規(guī)則的第一個元素
? ? ? ? function find(arr, callback) {
? ? ? ? ? ? for (let i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ? if (callback(arr[i])) { //如果他是true
? ? ? ? ? ? ? ? ? ? return arr[i]
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? let num1 = arr.find(item => item % 2 === 0)
? ? ? ? console.log(num1);
? ? ? ? // 6.findIndex() 方法, 用于獲取數(shù)組中滿足規(guī)則的第一個元素下標(biāo)
? ? ? ? function findIndex(arr, callback) {
? ? ? ? ? ? for (let i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ? if (callback(arr[i])) { //如果他是true
? ? ? ? ? ? ? ? ? ? return i
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? let num2 = arr.findIndex(item => item % 2 === 0)
? ? ? ? console.log(num2);
? ? ? ? // 7.some()方法锋八,用于表示數(shù)組中是否有滿足指定規(guī)則的元素浙于,有返回true,一個都沒有返回false
? ? ? ? function some(arr, callback) {
? ? ? ? ? ? for (let i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ? if (callback(arr[i])) {
? ? ? ? ? ? ? ? ? ? return ture
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
? ? ? ? ? ? return false
? ? ? ? }
? ? ? ? let isOk1 = arr.some(item => item % 20 === 0)
? ? ? ? console.log(isOk1);
? ? ? ? // 8.map() 方法挟纱, 用于將原始數(shù)組里面的數(shù)據(jù)根據(jù)指定的規(guī)則返回新的數(shù)組\
? ? ? ? // 會改變原數(shù)組 ? 用新數(shù)組來接
? ? ? ? function map(arr, callback) {
? ? ? ? ? ? let newArr = []
? ? ? ? ? ? for (let i = 0; i < arr.length; i++) {
? ? ? ? ? ? ? ? newArr.push(callbackarr[i])
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? let newArr2 = (arr.map(item => item * 3))
? ? ? ? console.log(newArr2);