媒介
处置前端到现在也有快两年了,日常平凡也会网络整顿一些笔记放在印象笔记,不过网络过以后就在没有看过,经大佬指导,真正控制一个知识点,最好的体式格局就是用本身的话把内容讲邃晓,就最先将之前零星的东西整合一下,和列位道友一同进步。
操纵数组
印象中数组有许多要领,体系的整顿一下
Array.map()
此要领是将数组中的每一个元素挪用一个供应的函数,结果作为一个新的数组返回,并没有转变本来的数组 let arr = [1, 2, 3, 4, 5] let newArr = arr.map(x => x*2) //arr= [1, 2, 3, 4, 5] 原数组坚持稳定 //newArr = [2, 4, 6, 8, 10] 返回新数组
Array.forEach()
此要领是将数组中的每一个元素实行传进供应的函数,没有返回值,直接转变原数组,注重和map要领辨别 let arr = [1, 2, 3, 4, 5] num.forEach(x => x*2) // arr = [2, 4, 6, 8, 10] 数组转变,注重和map辨别
Array.filter()
此要领是将一切元素举行推断,将满足前提的元素作为一个新的数组返回 let arr = [1, 2, 3, 4, 5] const isBigEnough => value => value >= 3 let newArr = arr.filter(isBigEnough ) //newNum = [3, 4, 5] 满足前提的元素返回为一个新的数组
Array.every()
此要领是将一切元素举行推断返回一个布尔值,假如一切元素都满足推断前提,则返回true,否则为false let arr = [1, 2, 3, 4, 5] const isLessThan4 => value => value < 4 const isLessThan6 => value => value < 6 arr.every(isLessThan4 ) //false arr.every(isLessThan6 ) //true
Array.some()
此要领是将一切元素举行推断返回一个布尔值,假如存在元素都满足推断前提,则返回true,若一切元素都不满足推断前提,则返回false let arr= [1, 2, 3, 4, 5] const isLessThan4 => value => value < 4 const isLessThan6 => value => value > 6 arr.some(isLessThan4 ) //true arr.some(isLessThan6 ) //false
Array.reduce()
此要领是一切元素挪用返回函数,返回值为末了结果,传入的值必需是函数范例 let arr = [1, 2, 3, 4, 5] const add = (a, b) => a + b let sum = arr.reduce(add) //sum = 15 相当于累加的结果 与之相对应的另有一个 Array.reduceRight() 要领,区分是这个是从右向左操纵的
Array.push()
此要领是在数组的背面增加新加元素,此要领转变了数组的长度 let arr = [1, 2, 3, 4, 5] arr.push(6, 7) console.log(arr) //[1, 2, 3, 4, 5, 6, 7] console.log(arr.length) //7
Array.pop()
此要领在数组背面删除末了一个元素,并返回数组,此要领转变了数组的长度 let arr = [1, 2, 3, 4, 5] arr.pop() console.log(arr) //[1, 2, 3, 4] console.log(arr.length) //4
Array.shift()
此要领在数组背面删除第一个元素,并返回数组,此要领转变了数组的长度 let arr = [1, 2, 3, 4, 5] arr.shift() console.log(arr) //[2, 3, 4, 5] console.log(arr.length) //4
Array.unshift()
此要领是将一个或多个元素增加到数组的开首,并返回新数组的长度 let arr = [1, 2, 3, 4, 5] arr.unshift(6, 7) console.log(arr) //[6, 7, 2, 3, 4, 5] console.log(arr.length) //7
Array.isArray()
推断一个对象是否是数组,返回的是布尔值
Array.concat()
此要领是一个能够将多个数组拼接成一个数组 let arr1 = [1, 2, 3] arr2 = [4, 5] let arr = arr1.concat(arr2) console.log(arr)//[1, 2, 3, 4, 5]
Array.toString()
此要领将数组转化为字符串 let arr = [1, 2, 3, 4, 5]; let str = arr.toString() console.log(str)// 1,2,3,4,5
Array.join()
此要领也是将数组转化为字符串 let arr = [1, 2, 3, 4, 5]; let str1 = arr.toString() let str2 = arr.toString(',') let str3 = arr.toString('##') console.log(str1)// 12345 console.log(str2)// 1,2,3,4,5 console.log(str3)// 1##2##3##4##5 经由过程例子能够看出和toString的区分,能够设置元素之间的距离~
15.Array.splice(最先位置, 删除的个数,元素)
全能要领,能够完成增编削
let arr = [1, 2, 3, 4, 5];
let arr1 = arr.splice(2, 0 'haha')
let arr2 = arr.splice(2, 3)
let arr1 = arr.splice(2, 1 'haha')
console.log(arr1) //[1, 2, 'haha', 3, 4, 5]新增一个元素
console.log(arr2) //[1, 2] 删除三个元素
console.log(arr3) //[1, 2, 'haha', 4, 5] 替代一个元素
末端
第一次写,都是很简单的数组用法,千里之行始于足下,从新把基本夯实一下,假如存在毛病或许表达不当,还望实时示知,thx
参考
MDN语法另有许多好玩的要领能够去demo
《JavaScript高等威望指南 》数组操纵