博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数组去重的两种方法
阅读量:4096 次
发布时间:2019-05-25

本文共 1010 字,大约阅读时间需要 3 分钟。

 

// 1、数组中无NaN的项		var a = [ "zx", "fg", 12, 34, 56, "zx", "fg", 12,34, 56, false, false, true, null ];		var arr = [];		a.forEach(function(item) {			if (arr.indexOf === -1) {				arr.push(item);			}		})		console.log(a)// ["zx", "fg", 12, 34, 56, false,true, null]		// 2、数组中有NaN的项		var a = [ "zx", "fg", 12, 34, 56, "zx", "fg", 12,34, 56, NaN, NaN, NaN, false, false, true,null ];		var arr = [];		var flag = true;		a.forEach(function(item) {			if (item != item) {				if (flag) {					arr.indexOf === -1 ? arr.push(item)							: "";					flag = false				}			} else {				arr.indexOf === -1 ? arr.push(item) : "";			}		})		console.log(arr) // ["zx", "fg", 12, 34, 56, NaN,false, true, null]		// 3、ES6的实现		// ES6新增了 Set 对象,也就是我们所说的“集合”,它类似于数组,但是成员		// 的值都是唯一的,没有重复的值。所以可以方便去重。		// Set本身是一个构造函数,用来生成Set数据结构。(详看Set和Map数据结构)		var a = [ "zx", "fg", 12, 34, 56, "zx", "fg", 12,34, 56, NaN, NaN, NaN, false, false, true,null ]		var b = Array.from(new Set(a));		console.log(b) // ["zx", "fg", 12, 34, 56, NaN, false, true, null]

 

 

 

 

 

转载地址:http://svqii.baihongyu.com/

你可能感兴趣的文章
计算机网络-OSI各层概述
查看>>
Java--String/StringBuffer/StringBuilder区别
查看>>
mySQL--深入理解事务隔离级别
查看>>
分布式之redis复习精讲
查看>>
数据结构与算法7-栈
查看>>
Java并发编程 | 一不小心就死锁了,怎么办?
查看>>
(python版)《剑指Offer》JZ01:二维数组中的查找
查看>>
(python版)《剑指Offer》JZ06:旋转数组的最小数字
查看>>
(python版)《剑指Offer》JZ13:调整数组顺序使奇数位于偶数前面
查看>>
(python版)《剑指Offer》JZ28:数组中出现次数超过一半的数字
查看>>
(python版)《剑指Offer》JZ30:连续子数组的最大和
查看>>
(python版)《剑指Offer》JZ32:把数组排成最小的数
查看>>
(python版)《剑指Offer》JZ02:替换空格
查看>>
JSP/Servlet——MVC设计模式
查看>>
使用JSTL
查看>>
Java 8新特性:Stream API
查看>>
管理用户状态——Cookie与Session
查看>>
最受欢迎的前端框架Bootstrap 入门
查看>>
JavaScript编程简介:DOM、AJAX与Chrome调试器
查看>>
通过Maven管理项目依赖
查看>>