JS 数组,对象常用方法 集合
数组
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)
JS 数组,对象常用方法 集合的更多相关文章
- js数组对象常用方法小结
~~~数组添加元素后一般返回数组的新长度 如: push(ele1[,ele2...]), unshift(ele1[,ele2...]) ~~~数组删除元素后一般返回被删除的元素 如: pop() ...
- JS数组array常用方法
JS数组array常用方法 1.检测数组 1)检测对象是否为数组,使用instanceof 操作符 if(value instanceof Array) { //对数组执行某些操作 } 2)获取对象的 ...
- JavaScript数组对象常用方法
JavaScript数组对象常用方法 方法 形式 返回值 是否改变原数组 描述 concat -items: ConcatArray[] 追加之后的数组 否 连接两个或更多的数组,并返回结果.注意 c ...
- 判断js数组/对象是否为空
/** * 判断js数组/对象是否为空 * isPrototypeOf() 验证一个对象是否存在于另一个对象的原型链上.即判断 Object 是否存在于 $obj 的原型链上.js中一切皆对象,也就是 ...
- js 数组的常用方法
pop,push,reverse,shift,sort,splice,unshift 会改变原数组 join,concat,indexOf,lastIndexOf,slice,toString 不会改 ...
- js数组去重常用方法
js数组去重是面试中经常会碰到的问题,无论是前端还是node.js数组常见的有两种形式,一种是数组各元素均为基本数据类型,常见的为数组字符串格式,形如['a','b','c'];一种是数组各元素不定, ...
- js数组相关知识集合
一.js数组快速排序 <script type="text/javascript"> var arr = [1, 2, 3, 54, 22, 1, 2, 3]; fun ...
- js 数组对象的操作方法
在jquery中处理JSON数组的情况中遍历用到的比较多,但是用添加移除这些好像不是太多. 今天试过json[i].remove(),json.remove(i)之后都不行,看网页的DOM对象中好像J ...
- JS数组&对象遍历
遍历的总结,经常用到的,希望帮助你我成长. JS数组遍历: 1,普通for循环 var arr = [1,2,3,4,9]; for ( var i = 0; i <arr.length; i+ ...
- js数组对象排序详解
一.js对象遍历输出的时候真的是按照顺序输出吗? 下边就来实践一下: var obj={'3':'ccc',name:'abc',age:23,school:'sdfds',class:'dfd',h ...
随机推荐
- 【转】常用PLC通讯协议
三菱FX系列PLC通讯测试 发送帧(Hex): 起始(STX) 02 命令(CMD) 30 首地址(ADDRESS) 30 30 41 30 字节数(BYTES) 30 31 终止(ETX) 03 校 ...
- 猫狗识别——PyTorch
猫狗识别 数据集下载: 网盘链接:https://pan.baidu.com/s/1SlNAPf3NbgPyf93XluM7Fg 提取密码:hpn4 1. 要导入的包 import os import ...
- [個人紀錄] git 疑難排解
1.git pull 時發生錯誤,要拉下來的檔案內含有檔名太長的檔案 ans: https://stackoverflow.com/questions/22575662/filename-too-lo ...
- 小白开学Asp.Net Core 《八》
小白开学Asp.Net Core <八> — — .Net Core 数据保护组件 1.背景 我在搞(https://github.com/AjuPrince/Aju.Carefree)这 ...
- JAVA WEB面试总结
本文目录: 1. 什么是cookie 2. 什么是session 3.什么是Servlet,Servlet生命周期方法 4.JSP隐含对象 5.JSP的四个域对象的作用范围 6.转发和重定向的区别 7 ...
- topshelf注册服务
1.需要从nutget上获取toshelf配置 2.代码 using Common.Logging; using Quartz; using Quartz.Impl; using System; us ...
- Mybatis逆向工程的使用。
指定配置文件与main运行生成 public class GeneratorSqlmap { public void generator() throws Exception { List<St ...
- git操作:撤销更改的文件
在没有git add之前: #撤销所有更改 git checkout . #撤销指定文件的更改 git checkout -- myfile.txt 在git add之后: git reset HEA ...
- 金蝶BOS元模型分析
对一些需求变化多样的产品而言,做好可变性设计是非常重要的.国外做得好的有Siebel,国内有金蝶的BOS,实际上金蝶的BOS很多理念跟Siebel是相似的,呵呵...他们都是采用MDD的方式来解决可变 ...
- kingbase常用语句
1. 查询数据库名 # select * from SYS_DATABASE; 2. 查询模式名 # select * from SYS_NAMESPACE; 3. 查询表空间 # select * ...