js 去掉数组中重复值,不重复的值保留
这里介绍2中方式:
js代码如下
var arr=[1,7,3,2,1,4,12,3,"3",3]
function compare(arr) {
var result = [], isfl;
for (var i = 0; i < arr.length; i++) {
isfl= false;
for (var j = 0; j < result.length; j++) {
if (arr[i] ===result[j]) {
isfl = true;
break;
}
}
if (!isfl) {
result.push(arr[i]);
}
}
return result;
}
var dw=[];
dw=compare(arr);
console.log(dw);
function compare2(arr) {
var result = [], hash = {},type="",item;
for (var i = 0; i<arr.length; i++) {
item = arr[i];
type = typeof(item);
if (!hash[item+type]) {
result.push(item);
hash[item+type] = true;
}
}
return result;
}
var dw2=compare2(arr);
console.log(dw2);
注意:因为存在类型不同所以要用===,而第二种方式中,hash()只比较值,不比较其类型,所以需要单独抽出其类型,一起比较。才能达到所需目的
效果如图显示:
js 去掉数组中重复值,不重复的值保留的更多相关文章
- JS在一个数组中查找某个用户输入的值,返回对应值所在索引值
方法有很多种 第一:直接循环,判断输出 第二:使用indexOf 正常来说,为了增加工作效率一般会选择indexOf,但是indexOf存在兼容性问题,因此最完善的写法如下 function inde ...
- js 去掉数组中重复的对象
function deteleObject(obj) { // console.log(obj) var uniques = []; var stringify = {}; ; i < obj. ...
- JS判断数组中的对象的每一个值不能为空
方法一:使用every()函数,此函数不怎么常用,想要了解更多请自查 //表格 evaluateData为表格的数据 <el-table id="out-table3" :d ...
- JS去除数组中重复值的四种方法
JS去除数组中重复值的四种方法 1 /// <summary> o[this[i]] = ""; } } newArr.p ...
- Ex 2_14 去掉数组中所有重复的元素..._第二次作业
首先利用归并排序算法对数组进行排序,时间复杂度为O(nlogn),接着再利用时间复杂度为O(n) 的去重复算法去掉数组中的重复元素.总的时间复杂度为O(nlogn). (这题应该用分支算法解决)以下为 ...
- js删除数组中重复的元素
1.方法一 将数组逐个搬到另一个数组中,当遇到重复元素时,不移动,若元素不重复则移动到新数组中 function unique(arr){ var len = arr.length; var resu ...
- js sort方法根据数组中对象的某一个属性值进行排序(实用方法)
js sort方法根据数组中对象的某一个属性值进行排序 sort方法接收一个函数作为参数,这里嵌套一层函数用来接收对象属性名,其他部分代码与正常使用sort方法相同. var arr = [ {nam ...
- js对象数组中的某属性值 拼接成字符串
js对象数组中的某属性值 拼接成字符串 var objs=[ {id:1,name:'张三'}, {id:2,name:'李四'}, {id:3,name:'王五'}, {id:4,name:'赵六' ...
- js从数组中删除指定值(不是指定位置)的元素
RT: js从数组中删除指定值的元素,注意是指定值,而不是指定位置. 比如数组{1,2,3,4,5},我要删除其中的元素3,但是这个3的位置我是不知道的,只知道要删除值为3的这一个元素,请问要怎么写? ...
随机推荐
- R学习笔记 第五篇:数据变换和清理
在使用R的分组操作之前,首先要了解R语言包,包实质上是实现特定功能的,预先写好的代码库(library),R拥有大量的软件包,许多包都是由某一领域的专家编写的,但并不是所有的包都有很高的质量的,在使用 ...
- Increasing Speed Limits
Increasing Speed Limits Time Limit: 2000/10000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- 暑假练习赛 006 A Vanya and Food Processor(模拟)
Description Vanya smashes potato in a vertical food processor. At each moment of time the height of ...
- HTML DOM应用案例2
<html> <head> <title>day03</title> <script type="text/javascript&quo ...
- OpenCV畸变校正源代码分析
图像算法中会经常用到摄像机的畸变校正,有必要总结分析OpenCV中畸变校正方法,其中包过普通针孔相机模型和鱼眼相机模型fisheye两种畸变校正方法. 普通相机模型畸变校正函数针对OpenCV中的cv ...
- 一起写框架-MVC框架-基础功能-Date类型数据绑定(七)
实现功能 表单请求传递的数据,格式为以下格式的日期时间数据. (1):yyyy-MM-dd hh:mm:ss (2):yyyy-MM-dd 执行方法可以使用Date类型接收. 实现思路 1.获得表单字 ...
- c#读取Excel数据到Gridview
#region 读取Excel数据到Gridview public void ReadExcel(string sExcelFile, GridView dgBom) { DataTable E ...
- c#中获取路径方法
要在c#中获取路径有好多方法,一般常用的有以下五种: //获取应用程序的当前工作目录. String path1 = System.IO.Directory.GetCurrentDirectory() ...
- mac环境下支持PHP调试工具xdebug,不需要建项目server
先让php支持xdebug 方式一: https://xdebug.org/download.php 下载相应的xdebug 可以到http://xdebug.org/wizard.php 把php ...
- 猪圈密码python脚本实现
CTF比赛中,MISC题型中有时候会考到一种一种叫做"猪圈密码"(Pigpen_chiper)的简单加密方式.网上有个表可以对照地来实现解密,但是实际中太慢不符合竞速思维,于是写一 ...