JS 数组,对象常用方法 集合
程序员文章站
2022-06-24 12:35:43
数组 1.数组去重: 主要是使用的 new Set() 方法 https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Set 2.替换数组指定位置元素 (splice) ,当然 splice 可 ......
数组
1.数组去重: 主要是使用的 new set() 方法 https://developer.mozilla.org/zh-cn/docs/web/javascript/reference/global_objects/set
// 两个方法 主要是使用到new set() let repeatarr = [1,2,3,4,1,2,3,4];
let reasult = [...new set(repeatarr)] //方法一
let reasult2 = array.from(new set(repeatarr)) // 方法二 console.log(repeatarr,reasult,reasult2)
2.替换数组指定位置元素 (splice) ,当然 splice 可以进行的不仅仅是替换,这个方法可以 增加 、删除、替换
// 使用splice 时 需要注意 它会改变原数组,并返回给你的是 你需要 删除 替换 的元素,增加则是返回空数组 /* 一共三个参数
参数一:代表你要开始的位置 (index值) 必填
参数二:代表你需要影响的元素个数 必填 注释:1、代表你开始位置(包含),之后往后数,需要影响的元素个数 (如果没有第三个元素,则是删除,否则是替换) 2、如果为0 则是不影响任何原有元素(如果没有第三个元素,则是不改变,否则是增加) 数三:代表你是否需要新的元素 注释:后面可接多个 */ let splicearr = ['hello','world',1,2,3]; let result = splicearr.splice(2,1,'崽种') let result2 = splicearr.splice(3,0,'嘻嘻','哈哈') let result3 = splicearr.splice(3,0) console.log(splicearr,result,result2,result3)
3.数组转换为对象 这个主要是用到扩展运算符
// 将数组转换为对象 主要是用到扩展运算符(...) // 数组转换出来的对象 key值为数组的index值 value值为数组的元素 let changearr = ['hello','!','world']; let changetoobj = {...changearr}; console.log(changetoobj);
4.合并数组 (concat 方法 || 扩展运算符方法)
// 合并数组 (concat 方法 || 扩展运算符方法) let concatarr = [0, 1, 2] let concatarr2 = [3, 4, 's'] let concatarr3 = [5] let result = concatarr.concat(concatarr2, concatarr3) //concat 数组自带的合并方法 let result2 = [...concatarr, ...concatarr2, ...concatarr3] //扩展运算符方法合并数组
console.log(result, result2)
5.求两个数组的交集
// 求两个数组的交集(即两个数组的重复部分) // 注意需要去重, filter里面用来判断部分 可写 arr2.include() {includes 只返回 true 或 false}
let arr = [0, 2, 4, 6, 8, 8] let arr2 = [1, 2, 3, 4, 5, 6, 8, 8, 2] let result = [...new set(arr)].filter(item => arr2.indexof(item) >= 0) let result2 = [...new set(arr)].filter(item => arr2.includes(item)) console.log(result,result2)
6.过滤数组中的虚值 使用数组的过滤方法
何谓虚值:false,0,' ',null,nan,undefined 这些都是虚值
// 过滤数组中的虚值 使用数组的过滤方法 何谓虚值:false,0,' ',null,nan,undefined 这些都是虚值 let arr = [0,'',nan,undefined,1,1,nan] let result = arr.filter(boolean) console.log(result);
7.数组 排序 (sort)
// 数组排序 (sort 方法) let arr = [1, 2, 8598, 21, 8974, 12, 963, 125, 10] let result = arr.sort((a, b) => a - b) //升序 let result = arr.sort((a, b) => b - a) //降序 console.log(result)