济南中京网站建设公司百度一下免费下载

当前位置: 首页 > news >正文

济南中京网站建设公司,百度一下免费下载,网站图片链接怎么做的,绍兴网站建设模板网站数组常用方法总结-功能、参数、返回值 用简单的js示例 运行在线工具#xff1a;链接: 菜鸟工具 菜鸟工具示意图#xff1a; ![在这里插入图片描述](https://img-blog.csdnimg.cn/de8589eb1acf42abb0347d8a3a3bbdfa.png
1.会改变原有数组方法 #xff08;1#xff09;pu…数组常用方法总结-功能、参数、返回值 用简单的js示例 运行在线工具链接: 菜鸟工具 菜鸟工具示意图 ![在这里插入图片描述](https://img-blog.csdnimg.cn/de8589eb1acf42abb0347d8a3a3bbdfa.png
1.会改变原有数组方法 1push、pop-最后元素增删 push -功能在数组的最后面,添加一个或者多个元素 -参数array.push(item1, item2, …, itemX),参数可以是字符串、数组、对象等 -返回值:添加元素后数组的长度. let arr [1,2,3,4,5]; let arrnewarr.push(3) console.log(arr);//[1, 2, 3, 4, 5, 3] console.log(arrnew);//6pop -功能在数组的最后面,删除一个元素 -参数array.pop()无参数 -返回值:返回的是刚才删除的元素. let arr [1,2,3,4,5]; let arrnewarr.pop() console.log(arr);//[1, 1, 2, 3, 4] console.log(arrnew);52unshif、shif-最前元素增删 unshift -功能在数组的最前面,添加一个或者几个元素 -参数array.unshift(item1,item2, …, itemX),参数可以是字符串、数组、对象等 -返回值:添加元素后数组的长度. let arr [1,2,3,4,5]; let arrnewarr.unshift(1) console.log(arr);//[1, 1, 2, 3, 4, 5] console.log(arrnew);6shift -功能在数组的最前面,删除一个元素 -参数arr.shift()无参数 -返回值:返回的是刚才删除的元素. let arr [2,3,4,5]; let arrnewarr.shift() console.log(arr);//[3, 4, 5] console.log(arrnew);//23splice-元素删除与添加 -功能添加或删除数组中的元素 -参数array.splice(index,howmany,item1,…,itemX) 从index下标开始,删除howmany个,并在该位置添加item 其中index参数必须 -返回值含有被删除的元素的数组 //arr.splice(start,deletedCount,item) let arr [1,2,4,17,3]; let arrnewarr.splice(1,3,7) console.log(arr);//[1,7, 3] console.log(arrnew);// [2, 4, 17]//arr.splice(start,deletedCount) let arr [1,2,4,17,3]; let arrnewarr.splice(1,3) console.log(arr);//[1, 3] console.log(arrnew);// [2, 4, 17]//arr.splice(start,0,item) let arr [1,2,4,17,3]; let arrnewarr.splice(1,0,7) console.log(arr);// [1, 7, 2, 4, 17, 3] console.log(arrnew);// []4copyWithin-复制元素 -功能从数组的指定位置拷贝元素到数组的另一个指定位置中 -参数array.copyWithin(target, start, end) 其中target为必须参数其余可选 -返回值:返回改变后的新数组 const arr1 [1,2,3,4,5]; const arrnew arr1.copyWithin(2, 0, 2); console.log(arr1);//[1, 2, 1, 2, 5] console.log(arrnew);//[1, 2, 1, 2, 5]5sort-数组排序 -功能对数组的元素进行排序。 -参数1无参数 -返回值:将按照ASCII字符顺序进行排序 (如果数组元素是数字sort方法会调用每一个数组项的toString()方法获得字符串而后再对获得的字符串进行排序); (如下实例数组元素是数字无参数所以17会排在2的前面 //无参数17在2的前面 let arr [1,2,4,17,3]; let arrnewarr.sort(); console.log(arr);//[1, 2, 3, 4, 17] console.log(arrnew);//[1, 2, 3, 4, 17]-参数2arr.sort(function(a,b){}回调函数其中b值在a值前面 -返回值: 如果返回值大于 0则位置互换。 如果返回值小于 0则位置不变。 a-b输出从小到大排序 b-a输出从大到小排序。 //有参数 let arr [1,2,4,17,3]; let arrnewarr.sort(function(a,b){return a-b; }); console.log(arr);//[1, 2, 3, 4, 17] console.log(arrnew);// [1, 2, 3, 4, 17]6reverse-数组排序 -功能对数组的元素进行翻转。 -参数array.reverse()无参数 -返回值:颠倒顺序的数组 let arr [1,2,4,7,3]; let arrnewarr.reverse(); console.log(arr);//[3, 7, 4, 2, 1] console.log(arrnew);//[3, 7, 4, 2, 1]2.不会改变原有数组方法 2.1 判断方法 1isArray() -判断是否是数组 -功能判断是否是数组。 -参数Array.isArray(arr)参数为要判断的对象 -返回值:如果对象是数组返回 true否则返回 false。 let arr [1,2,4,7,3]; let arrnewArray.isArray(arr); console.log(arr);//[3, 7, 4, 2, 1] console.log(arrnew);//true2.2 操作方法 1concat-拼接数组 -功能连接两个或更多的数组 -参数array1.concat(array2, array3,…, arrayX) -返回值:返回拼接后的新数组 -concat和push的区别push是将参数作为整体直接加到数组最后一个并且返回值是新数组长度如下例子push后的结果应为[1,2,3,4,5,[a,b]]所以返回的长度为6 const arr1 [1,2,3,4,5]; const arr2 [a,b]; const arrnew arr1.concat(arr2); const arr3 arr1.push(arr2); console.log(arr1);//[1, 2, 3, 4, 5] console.log(arr2); console.log(arrnew);//[1, 2, 3, 4, 5, a, b] console.log(arr3);//62slice-截取数组 -功能从数组中截取指定的字段 -参数1arr.slice(start,end)从start下标开始截取,一直到end结束,不包括end -返回值:返回截取的新数组 let arr [1,2,3,4,5]; let arrnewarr.slice(2,3) console.log(arr);//[1, 2, 3, 4, 5] console.log(arrnew);//[3]-参数2arr.slice(start) ;从start下标开始截取,一直到最后 let arr [1,2,3,4,5]; let arrnewarr.slice(3) console.log(arr);//[1, 2, 3, 4, 5] console.log(arrnew);//[4, 5]-参数3arr.slice( ) ;全部截取 let arr [1,2,3,4,5]; let arrnewarr.slice() console.log(arr);//[1, 2, 3, 4, 5] console.log(arrnew);//[1, 2, 3, 4, 5]2.4 查询方法 1.1indexOf-查找元素第一次出现 -功能查找元素在数组中第一次出现的位置可以用来判断数组是否含有该元素 -参数1arr.indexOf (element,fromIndex),从fromIndex这个下标开始从左往右元素第一次出现的位置 -返回值查找到的元素的下标若无此元素返回-1 let arr [1,2,4,6,3]; let arrnewarr.indexOf(4) if (arr.indexOf(4) -1){console.log(元素不存在) } else {console.log( 元素存在!) } console.log(arr);// [1,2,4,6,3]; console.log(arrnew);// 21.2lastIndexOf-查找元素最后一次出现 -功能查找元素在数组中最后出现的位置 -参数1arr.lastIndexOf (element,fromIndex),从fromIndex这个下标开始,从右往左元素最后一次出现的位置 这里最后一项是按照数组从左往右的最后一项 虽然是从右往左搜索但返回的位置是从左往右数的 -返回值查找到的元素的下标若无此元素返回-1 let arr [1,2,4,6,4,3]; let arrnewarr.lastIndexOf(4) let arrnew2arr.lastIndexOf(4,1) console.log(arr);// [1, 2, 4, 6, 4, 3] console.log(arrnew);// 4 console.log(arrnew2);// -12includes-查找元素 -功能判断一个数组是否包含一个指定的值 -参数1arr.includes (searchElement,fromIndex) searchElement:必须fromIndex可选 -返回值如果是返回 true否则false let arr [1,2,3,4,5]; let arrnewarr.includes(1) console.log(arr);// [1, 2, 3, 4, 5] console.log(arrnew);//true3.1find-匹配元素 -功能find找到符合条件的项 -参数array.find(function(currentValue, index, arr),thisValue) -返回值返回符合测试条件的第一个数组元素值如果没有符合条件的则返回 undefined。 let arr [1,2,3,4,5]; let arrnewarr.find(function(item){return item 4 })console.log(arr);// [1, 2, 3, 4, 5] console.log(arrnew);//13.2findfindIndex-匹配元素 -功能findIndex找到符合条件的项的下标 -参数array.findIndex(function(currentValue, index, arr), thisValue) -返回值返回第一项下标如果没有符合条件的则返回 -1 let arr [1,2,3,4,5]; let arrnewarr.findIndex(function(item){return item 4 })console.log(arr);// [1, 2, 3, 4, 5] console.log(arrnew);//02.3 转换方法 1split-字符串拆分成数组 -功能用指定的分隔符,将字符串分割成数组。 -参数参数为要分隔的值 -返回值:一个新的数组 const str test-arry; const arr str.split(-); console.log(str);//test-arry console.log(arr);//[test, arry]2join-数组转为字符串整体 -功能将数组里的元素,通过指定的分隔符,以字符串的形式连接起来 -参数array.join(separator) separator指定要使用的分隔符。如果省略该参数则使用逗号作为分隔符。 -返回值:一个新的字符串 const arr1 [1,2,3,4,5]; const arrnew arr1.join(-); console.log(arr1);//[1, 2, 3, 4, 5] console.log(arrnew);//1-2-3-4-53toString()-数组转为字符串 -功能把数组转换为字符串数组中的元素之间用逗号分隔。 -参数array.toString() -返回值:一个新的字符串 const arr1 [1,2,3,4,5]; const arrnew arr1.toString() console.log(arr1);//[1, 2, 3, 4, 5] console.log(arrnew);//1,2,3,4,52.4 迭代方法 1forEach -功能调用数组的每个元素并将元素传递给回调函数 -参数array.forEach(callbackFn(currentValue, index, arr), thisValue) -返回值没有返回值 const arr [1,2,3,4,5]; const arrnew arr.forEach(function(item,index,arr){itemitem1 }); console.log(arr);//[1, 2, 3, 4, 5] console.log(arrnew)//undefined2.1some()-检测数组 -功能some检测是否有元素符合指定条件一旦找到则不会继续迭代下去。 -参数array.some(function(currentValue,index,arr),thisValue) -返回值:符合true不符合false let arr [1,2,3,4,5]; let arrnewarr.some(function(item){return item 2 }) let arrnew2arr.every(function(item){return item 2 }) console.log(arr);// [1, 2, 3, 4, 5] console.log(arrnew);//true console.log(arrnew2);//false2.2 every()-检测数组 -功能every检测每个元素是否都符合条件一旦有一个不符合条件则不会继续迭代下去。 -参数array.every(function(currentValue,index,arr), thisValue) -返回值:符合true不符合false 3filter()-过滤数组 -功能通过检查指定数组中符合条件的所有元素 -参数arr.filter(function(currentValue,index,arr), thisValue) -返回值:返回一个新数组 let arr [1,2,3,4,5]; let arrnewarr.filter(function(item,index,arr){return item2 }) console.log(arr);// [1, 2, 3, 4, 5] console.log(arrnew);// [3, 4, 5]4map()-映射 -功能对数组每一项都运行传入的函数 -参数array.map(function(currentValue,index,arr), thisValue) currentValue必须值表示数组每一项元素 index: 对应的下标索引值 arr: 就是调用该方法的数组本身 thisValue如果没有默认null或者undefined -返回值由每次函数调用的结果构成的数组 let arr [1,2,3,4,5]; let arrnewarr.map(function(item,index,arr){return item*2 }) console.log(arr);// [1, 2, 3, 4, 5] console.log(arrnew);// [2, 4, 6, 8, 10]5reduce-累加元素 -功能接收一个函数作为累加器数组中的每个值从左到右开始缩减最终计算为一个值可以作为一个高阶函数用于函数的 compose -参数array.reduce(function(total, currentValue, currentIndex, arr), initialValue) total必需。初始值, 或者计算结束后的返回值。 -返回值由每次函数调用的结果构成的数组 -可计算数组总和、扁平化数组、数组去重、计算元素出现次数等 //计算数组总和 let arr [1,2,3,4,5]; let arrnewarr.reduce(function(total,item){return totalitem })console.log(arr);// [1, 2, 3, 4, 5] console.log(arrnew);//15 //二维数组转为一维数组 let arr [[1, 2], [2, 3], [4, 5], [6, 7]]let arrnew arr.reduce((a, b) {return a.concat(b)}, [])console.log(arrnew)//[1,2,2,3,4,5,6,7]//数组去重let arr [1,2,3,4,4,1] let newArr arr.reduce((pre,cur){if(!pre.includes(cur)){return pre.concat(cur)}else{return pre} },[]) console.log(newArr);// [1, 2, 3, 4] //计算每个元素出现的次数 let arr [1,2,1,3,4,3] let arrnew arr.reduce((pre,cur) { if( cur in pre){ pre[cur] } else{ pre[cur] 1 } return pre }, {}) console.log(arrnew) // {1: 2, 2: 1, 3: 2, 4: 1}参考 1.数组的常用方法大全 2.菜鸟教程: JavaScript Array 对象