常用技巧之JS去除重复项
时间:2022-04-27
本文章向大家介绍常用技巧之JS去除重复项,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
这几天一直在更新一些排序啊,去重方面的内容,
是因为这些说是技巧,其实都是JS的基本功,
不管是新人,还是老鸟,都要加强加强再加强。
因为经常有种情况,就是别人写的框架、库,
打开源文件你看不懂,
为什么呢?
就因为你基本功不好,不能理解它的各种方法的综合运用。
那今天我们就一起来学习下JS的去除重复项,
说是一起学习,真的就是一起学习,
我给你们讲,
首先我得自己学会,,
先上代码哈:
function isCheckArr(arr){
var newArr = [];
for(var i=0;i<arr.length;i++){
if( newArr.indexOf( arr[i] ) == -1 ){
newArr.push( arr[i] )
}
}
return newArr;
}
var arr = [1,2,3,1,2,3,4];
isCheckArr(arr);//[1, 2, 3, 4]
这个去重的代码,是最简单的,
比前二天的判断是否有重复啊,,重复几次啊都简单。。
你看它里面就是一个indexOf,这个方法是在某个字符串中查找指定的字符串,
如果没找着就返回-1。
那这个isCheckArr的意思就是,
1,新建一个空数组;
2,通过for循环,在newArr里查找arr数组的每一项,
3,如果arr的每一项都不在newArr里,那说明它不是重复的,
4,把这个不重复的项,push加入newArr
最后返回的就是没有重复项的新数组啦。。
怎么样,这个简单吧,
就是个for循环,然后indexOf查找而已,,
查看以下文章:
- LINQ驱动数据的查询功能
- JS魔法堂:jQuery.Deferred(jQuery1.5-2.1)源码剖析
- 一步一步学习Bootstrap系列--表单布局
- Java进阶01 String类
- linux(十二)之用户管理
- Dapper.Net 应用
- linux(十)配置ssh免密登录实现
- 微信群也有群相册功能了,终于可以给手机相册腾出空间了!
- PHP5.3、PHP5.4安装ZendOptimizer
- linux(十一)之初始化文件
- C编译: 动态连接库 (.so文件)
- 腾讯叮当首都发布生态合作伙伴计划,全面开放AI能力
- Python火爆的背后的应用领域是数据挖掘、大数据和人工智能的应用吗?
- linux(九)之网络基础
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Linux服务器下Nginx与Apache共存的实现方法分析
- 浅析Linux中vsftpd服务配置(匿名,用户,虚拟用户)
- CentOS7开启MySQL8主从备份、每日定时全量备份(推荐)
- leetcode栈之用两个栈实现队列
- Ubuntu 18.04通过命令禁用/开启触控板
- 如何利用watch帮你重复执行命令
- Linux查看当前登录用户并踢出用户的命令
- centos7下安装java及环境变量配置技巧
- Ubuntu系统下扩展LVM根目录的方法
- 将宝塔面板linux版装在/www以外的目录的方法
- 详解在Linux下9个有用的touch命令示例
- 一步步教你如何开启、关闭ubuntu防火墙
- Linux环境ActiveMQ部署方法详解
- Ubuntu 16.04无法切换root权限问题的解决
- leetcode栈之用队列实现栈