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 ...
随机推荐
- 剑指Offer_Java_顺时针打印矩阵(二维数组)
顺(逆)时针打印矩阵 算法思想: 简单来说,就是不断地收缩矩阵的边界 定义四个变量代表范围,up(初始0).down(初始-行高).left(初始-0).right(初始-列宽), 向右走存入整行的值 ...
- 04 .NET CORE 2.2 使用OCELOT -- identity认证授权
修改接口项目 在上次的项目基础上,分别修改两个api项目的startup.cs public void ConfigureServices(IServiceCollection services) { ...
- mysql锁机制总结,以及优化建议
一.锁概述和分类 二.表锁 偏向MyISAM存储引擎,开销小,加锁快:无死锁:锁定粒度大,发生锁冲突的概率最高,并发度最低. [手动增加表锁] lock table 表名字1 read(write), ...
- 【spring】spring retry介绍
一.为什么需要重试? 我们知道只要是网络请求都有失败的情况,这个时候增加retry机制是必要的.而spring全家桶中就有这么一套机制. 二.spring retry spring系列的spring ...
- 基于vue+springboot+docker网站搭建【二】搞定服务器
搞定服务器 双11在阿里云用家人的身份证注册账号,买了两台打折的服务器.2核4G一台3年799块:1核2G一台3年229块.机器配置如下图. 1.买的时候注意相同地区的相同可用区.比如我两台机器都选择 ...
- 浅谈Nginx以及特性
Nginx以及特性 1.Nginx是什么? Nginx是一个高性能的HTTP和反向代理轻量级web服务器,特点:占用内存少,处理并发能力强.Nginx专为性能优化而开发,性能是其最重要的考量 ,能经受 ...
- i春秋——“百度杯”CTF比赛 十月场——Login
根据页面源码提示的 test1 test1 登录 刷新此页面并抓包,有个show=0值得关注 在发送的包的header中加一句show:1,即可得到member.php的源码 <?php inc ...
- Android源码分析(十二)-----Android源码中如何自定义TextView实现滚动效果
一:如何自定义TextView实现滚动效果 继承TextView基类 重写构造方法 修改isFocused()方法,获取焦点. /* * Copyright (C) 2015 The Android ...
- 掌握 Async/Await
摘要: 还不用Async/Await就OUT了.. 原文:掌握 Async/Await 作者:Jartto Fundebug经授权转载,版权归原作者所有. 前端工程师肯定都经历过 JS 回调链狱的痛苦 ...
- Spring Security :CsrfFilter过滤器
spring security框架提供的默认登录页面,会有一个name属性值为_csrf的隐藏域: 这是框架在用户访问登录页面之前就生成的,保存在内存中,当用户提交表单的时候会跟着一起提交: 然后会经 ...