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 ...
随机推荐
- vue开发相关问题以及解决方案
1.使用ref获取到dom元素,但是无法获取到dom元素的样式? 给div盒子加上<div ref="remove">, 在控制台打印为undefined. 此时我们打 ...
- vue多个路由使用同一个页面,通过name判断参数,渲染页面数据
项目中,发现有多个页面的数据内容相同,只是请求数据的参数不同,就可以使用同一个组件来渲染 这里的客户列表 / 我负责的 / 我参与的 都使用同一个组件,不同点在请求数据的参数 可以看到,通过钩子函数, ...
- 给easyui datebox扩展一个清空按钮,无侵入
/** * 给时间框控件扩展一个清除的按钮 */ $.fn.datebox.defaults.cleanText = '清空'; (function ($) { var buttons = $.ext ...
- Github清除历史提交,保留最新提交
有时候,需要启动一个新的分支,同时想摒弃历史信息,那么可以使用下面的方法来实现 #克隆git仓库 git clone [URL] #进入git仓库 cd [仓库名] #创建一个名为 new_branc ...
- Nginx 高级配置-https 功能
Nginx 高级配置-https 功能 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.HTTPS工作过程 1>.SSL/TLS SSL(Secure Socket Lay ...
- 如何检查linux服务器是否被入侵
被入侵服务器的症状 当服务器被没有经验攻击者或者自动攻击程序入侵了的话,他们往往会消耗 100% 的资源.他们可能消耗 CPU 资源来进行数字货币的采矿或者发送垃圾邮件,也可能消耗带宽来发动 DoS ...
- Oracle ASMCMD命令参考
Oracle ASMCMD命令参考 0.什么是asm ASM它提供了以平台无关的文件系统.逻辑卷管理以及软RAID服务.ASM可以支持条带化和磁盘镜像,从而实现了在数据库被加载的情况下添加或移除磁盘以 ...
- 京东js加密 nloginpwd 破解
京东登录,有一个参数nloginpwd,是加密字段. 第一步:浏览器抓包 第二部:搜索加密字段 js 代码 第三部: 下断点 2. js代码: var navigator = {}; var wind ...
- CentOS7编译安装Keepalived2.0.19
实验环境:centos7 节点1:10.15.192.21 节点2:10.15.192.22 vip地址:10.15.192.23 1.下载文件 cd /usr/local/src wget http ...
- Java反射之Bean修改更新属性值等工具类
package com.bocean.util; import java.lang.annotation.Annotation; import java.lang.reflect.Field; imp ...