首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

js数组去重种方法

今天来聊一聊JS数组去重一些方法,包括一些网上看到和自己总结,总共5种方法(ES5)。...先创建一个新数组用来存储新去重数组,然后遍历arr数组,在遍历过程中,分别判断newArr数组里面是不是有遍历到arr中元素,如果没有,直接添加进newArr中,如果已经有了(重复),那么不操作...newArr.push(arr[i]) 11 } 12 console.log(newArr) // 结果:[0, 5, 6, 7, 2, 8] 思路:两层for循环,外面一层是控制遍历到一个...第种:数组遍历法 1 var arr = ['a', 'a', 'b', 'c', 'b', 'd', 'e', 'a'] 2 var newArr = [] 3 for (var i...arr数组遍历,内层for循环控制是新数组遍历,从第0位开始,如果新数组中没有这个arr数组中遍历到这个元素,那么状态变量bl值还是true,那么自然进入到了if中把这个值推入到新数组中,如果有这个元素

2.3K31

js数组排序种方式「建议收藏」

大家好,又见面了,我是你们朋友全栈君。 下面主要介绍了数组排序种方式——sort()方法、选择排序、冒泡排序、插入排序和快速排序, 刚兴趣朋友,可以往下看哦。...1.jssort()方法 基本思想:根据提供排序规则,对数组元素进行排序。 使用数字排序,必须通过一个函数作为参数来调用。...(大)元素,存放在数组起始位置。...再从剩余数组元素中继续寻找最小(大)元素,返回放在已排序数组末尾 重复第二步,直到所有元素都排序完成 动画演示: var arr = [123,203,23,13,34,65,65,45,89,13,1...,如果不符合规则互换位置,一次比较就能够将最大或最小值放在数组最后一位 继续对除【最后一位】之外所有元素重复上述过程 动画演示: var arr = [123,203,23,13,34,65,65,45,89,13,1

2.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

js数组操作

) 从上面测试结果可以发现:传入不是数组,则直接把参数添加到数组后面,如果传入数组,则将数组各个项添加到数组中。...console.log(arrCopy2); //[1, 3, 5, 7, 9, Array[2]] console.log(arrCopy2[5]); //[11, 13] 上述代码中,arrCopy2数组项是一个包含两项数组...例如, splice(0,2)会删除数组两项。 插入:可以向指定位置插入任意数量项,只需提供 3 个参数:起始位置、 0(要删除项数)和要插入项。...这两个方法都接收两个参数:一个在每一项上调用函数和(可选)作为归并基础初始值。 传给 reduce()和 reduceRight()函数接收 4 个参数:一个值、当前值、项索引和数组对象。...4、数组元素删除 arrayObj.pop(); //移除最后一个元素并返回该元素值 arrayObj.shift(); //移除最前一个元素并返回该元素值,数组中元素自动移 arrayObj.splice

2.7K00

js数组splice方法_js数组删除某一项

整数,规定从何处添加/删除元素,是开始插入/删除数组元素下标 howmany 必需。整数,规定删除多少个元素。如果设置为 0,则不会删除元素 item1, …, itemX 可选。...res); //返回被删除元素:["c"] console.log(arr); //修改后数组:["a", "b", "d"] //指定位置删除指定个数(0个) var arr = ['a','b...','c','d']; var res = arr.splice(2,0); console.log(res); //返回被删除元素:[] console.log(arr); //修改后数组:["a...:["c"] console.log(arr); //修改后数组:["a", "b", "插入", "d"] 2、delete:用于删除对象某个属性,或删除数组某一项 (详细说明:https://...,或计算结果为对象表达式(数组) porperty / index 要删除属性(下标) 例: //删除对象某个属性 let obj = { name:'alax', age:18

3K20

javascript数组怎么定义_js数组

初识数组:新建一个数组 每一门编程语言,都有数组或类似数组结构,同样JavaScript(虽然是脚本语言)也不例外,学习JavaScript数组,我们从新建第一个数组开始: var arr = [...]; var num2 = arr[1]; var num3 = arr[2]; 这样三个num变量就获取了数组arr三个元素,完成了访问。...认识数组数组基本方法 学会了新建数组和访问数组元素,我们开始了解一些数组基本方法: push()方法 push(参数1,参数2,参数3…,参数n) 方法可把参数指定元素依次添加到数组末尾,...我们用默认不传入参数形式代码给大家演示它排序效果: var arr = [3, 1, 2, 4, 5]; console.log("排序:") console.log(arr[0] + " "...我们用代码演示一下它工作: var arr = [1, 2, 3, 4, 5]; console.log("倒序:") console.log(arr[0] + " " + arr[1] + " "

3K40

JS数组常用方法

JS 数组常用方法(个人感觉) 1. forEach() 循环,无法在中间停止 2. some() 循环,找到符合条件之后,可以通过 return true 退出循环 3. every() 测试数组所有元素是否都能通过某个指定函数测试...2, , 3]; // 如果数组是稀疏,缺失元素不会调用函数,但是返回数组也会和原始数组一样稀疏 let newA = a.map((v) => v * v); console.log(newA)...2)); console.log(a.find((v) => v < 0)); // 找不到符合条件,返回undefined 8. flat() 用于打平数组(把嵌套数组变为普通数组元素) let...; // push()在数组末尾添加元素,并返回数组新长度 console.log(a); console.log(a.pop()); // pop()删除数组末尾元素,并返回删除元素 console.log...console.log(a.splice(2, 3, "Hello", "Hi")); // splice()第一个参数是起点,第二个参数是要删除元素个数,之后参数是要插入元素,返回删除数组

4.2K20

js获取指定时间几秒

最近项目上有一个需求是:根据一张图片拍摄时间获取到这个时间二后三一个秒钟视频信息,通过查找相关资料写了一个方法拿来记录分享一下。...reduceTwoS(dateStr){//dateStr格式为yyyy-mm-dd hh:mm:ss var dt=new Date(dateStr.replace(/-/,"/"));//将传入日期格式字符串转换为...date对象 兼容ie // var dt=new Date(dateStr);//将传入日期格式字符串转换为date对象 非ie var ndt=new Date(dt.getTime()-2000...addThreeS(dateStr){//dateStr格式为yyyy-mm-dd hh:mm:ss var dt=new Date(dateStr.replace(/-/,"/"));//将传入日期格式字符串转换为...date对象 兼容ie // var dt=new Date(dateStr);//将传入日期格式字符串转换为date对象 非ie var ndt=new Date(dt.getTime()+

4.8K20

js判断数组中是否存在某一数值种方法

1.javascript indexOf()方法 var arr_data = [1,2,3]; arr_data.indexOf(1); //如果存在返回值下标,不存在返回-1 2.jquery...$.inArray()方法 $.inArray(1, arr_data); //如果存在返回值下标,不存在返回-1 3.arr.find() 数组实例find()用于找出第一个符合条件数组元素...它参数是一个回调函数,所有的数组元素依次遍历该回调函数,直到找出第一个返回值为true元素,然后返回该元素,否则返回undefined。 注意:find()对于空数组,函数是不会执行。...find()并没有改变数组原始值 arr.find(function(value) { if(value === 要查找值) { //则包含该元素 }}) 4.arr.findIndex...()返回第一个符合条件数组元素位置,如果所有的元素都不符合条件,则返回-1.

5.1K10

微鲸:小米,年后蓝鲸

小而美的微鲸愈来愈像一只小蓝鲸,每天都在成长,仔细对比就会发现,现在微鲸与小米颇为相似,年之后很可能长成一只真正蓝鲸。...微鲸:小米 我们先来看下微鲸和小米5年小米成长历程对比: ? 对比微鲸和小米成长历程,两者都属于成长速度爆表型。...小米年内成长为一个市值450亿美元巨头,很多人都说小米是踩对了互联网风口,但是踩对风口很幸运,更要有驾驭风口实力。...如今,微鲸踩在了智能家居风口之上,并且搭建了一个非常强大团队和极具攻击性战略,深有小米起步时势头。...年后蓝鲸 ,互联网才刚刚兴起,小米凭借其互联网化思维、模式一路狂奔,小米在竞争对手都还没晃过神来。

1.1K40

排名设备管理软件

设备是企业经营中支出主要组成部分。因此,设备管理重要性相信企业管理者都深有体会。在5G、移动办公、物联网等技术发展今天,企业在自己赛道上飞速奔跑,怎么能缺少了设备管理系统助力?...工厂信息化建设显得尤其重要,而信息化重中之重就是一款专业设备资产管理软件,全方位从设备、人员、业务各个角度去管理设备固定资产。目前市面上固定资产管理系统彩斑斓,每家都有自己亮点和特色。...如何选择一个适合企业本身业务需求固定资产管理系统,成为企业领导以及固定资产管理者思考问题。今天小编给大家推荐几款好用固定资产管理系统,希望对大家选型有所帮助。...系统可将设备从采购、入库到报废全生命周期闭环式管理。系统通过引入二维码和RFID码技术,可支持APP或者RFID终端扫码盘点,极大提升了设备日常管理、盘点和巡检效率。...系统不但有预设功能,还内置了PaaS架构,支持设备自定义字段、自定义审批流、自定义表单,用户可以根据自己实际场景需求进行搭建单据等,实现了多场景设备管理需求。

1.2K30

js数组、json、js对象区别与联系

最近在敲代码时,遇上了一个关于JS数组问题,由此引发了关于对象和json联想,曾经觉得很畅顺知识点突然模糊了。于是,为了理清这些东西,有了如下这篇文章。...理清这些问题,第一步当然是找到他们概念:js所有事物都是对象:字符串、数值、数组、函数…此外,JavaScript允许自定义对象 (1)JS数组,常态为var a = [1,2,3]格式,用文字来形容就是一个有序数列...记得上面概念里,js所有事物都是对象,那么我们完全可以把json对象当做js对象子集,string只是js对象key数据类型中一个选项 额外说一点,js里面是没有键值对数组这一说,现有的这种键值对数组...(也即是关联数组)其实就是js对象,需要要自己去构造,如: var a = []; a.push({ value:value }); 当然,现在ES6已经有了专门表示键值对数组结构...a[1].name 都是可以使用类似于数组索引,但它实质是js对象object

9.2K40

js数组删除指定元素splice_js找出数组中最大

js自带删除元素方法有: 1.splice方法 //获取元素在数组下标 Array.prototype.indexOf = function(val) { for (var i = 0; i < this.length...; i++) { if (this[i] == val) { return i; }; } return -1; }; //根据数组下标,删除该下标的元素 Array.prototype.remove...splice有3个参数,它也可以用来替换/删除/添加数组内某一个或者几个值 index:数组开始下标 len: 替换/删除长度 item:替换值,删除操作的话 item为空 如:arr = [‘a’...,‘b’,‘c’,‘d’] 删除 —- item不设置 arr.splice(1,1) //[‘a’,‘c’,‘d’] 删除起始下标为1,长度为1一个值,len设置1,如果为0,则数组不变 arr.splice...方法 delete删除掉数组元素后,会把该下标出值置为undefined,数组长度不会变 如:delete arr[1] //[‘a’, ,‘c’,‘d’] 中间出现两个逗号,数组长度不变,有一项为

3.7K40

JS 数组、对象深拷贝

博客地址:https://ainyi.com/72 JavaScript 程序中,对于简单数字、字符串可以通过 = 赋值拷贝 但是对于数组、对象、对象数组拷贝,就有浅拷贝和深拷贝之分 浅拷贝就是当改变了拷贝后数据...b.push(4) a // [1, 2, 3] b // [1, 2, 3, 4] slice() 数组方法 slice() 可从已有的数组中返回选定元素 那么设置为 0,就是返回整个数组 let...a // { name: 'krry' } b // { name: 'lily' } --- 以上是简单数组、对象深拷贝方法,但是对于二维数组、对象数组、对象里包含对象,以上方法均达不到深拷贝方法...以上只能达到数组、对象第一层==深拷贝==,对于里面的数组或对象属性则是==浅拷贝==,因为里面的内存地址只是拷贝了一份,但都是指向==同一个地址== 所以当改变数组、对象里数组元素或对象,原数据依然会改变...二维数组、对象数组、多层对象深拷贝 最常用 JSON 序列化与反序列化 使用 JSON.parse(JSON.stringify(obj)) let a = [1, [2, {aa: 2}, [4

8.1K30

JS 数组常用方法归纳

改变原数组方法 shift() 把数组第一个元素从其中删除,并返回第一个元素值, 如果数组是空,那么 shift() 方法将不进行任何操作,返回 undefined 值。...该方法第一个参数将成为数组新元素 0,如果还有第二个参数,它将成为新元素 1,以此类推。请注意,unshift() 方法不创建新创建,而是直接修改原有的数组。该方法会改变数组长度。...push() 方法和 pop() 方法使用数组提供先进后出栈功能。 该方法会改变数组长度。 reverse()  用于颠倒数组中元素顺序。 该方法会改变原来数组,而不会创建新数组。...不改变原数组方法 concat() 连接两个或多个数组,不改变现有数组,返回新数组,添加数组元素 join(",") 把数组所有元素放入一个字符串,通过‘,’分隔符进行分隔,返回字符串 slice...调用数组每个元素,并将元素传递给回调函数,空数组不执行回调函数,参数同上 filter()  创建一个新数组,新数组元素是通过检查指定数组中符合条件所有元素,不对空数组检测,不改变原数组,参数同上

2.2K30
领券