/**
* 对于由简单类型数据组成的对象为元素组成的数组进行去重操作
* @params {Array} 需要去重的对象数组
* @returns {Array} 去重后的对象数组
*/
function distinct(sourceArray) { var resultArray = [];
var i, j, currentSource, currentResult; for (i = 0; i < sourceArray.length; i++) { currentSource = sourceArray[i]; if (resultArray.length === 0) {
resultArray.push(currentSource);
continue;
} for (j = 0; j < resultArray.length; j++) { currentResult = resultArray[j]; if (!compare(currentResult, currentSource)) {
resultArray.push(currentSource);
} } } return resultArray; function compare(obj1, obj2) {
for (var prop in obj1) { if (!obj1.hasOwnProperty(prop)) {
continue;
} if (obj1[prop] !== obj2[prop]) {
return false;
} } return true;
} }
/**
* 对于由简单类型数据组成的对象为元素组成的数组进行去重操作
* @params {Array} 需要去重的对象数组
* @returns {Array} 去重后的对象数组
*/
function distinct(sourceArray) {
var resultArray = [];
var i, j, currentSource, currentResult;
for (i = ; i < sourceArray.length; i++) {
currentSource = sourceArray[i];
if (resultArray.length === ) {
resultArray.push(currentSource);
continue;
}
for (j = ; j < resultArray.length; j++) {
currentResult = resultArray[j];
if (!compare(currentResult, currentSource)) {
resultArray.push(currentSource);
}
}
}
return resultArray;
function compare(obj1, obj2) {
for (var prop in obj1) {
if (!obj1.hasOwnProperty(prop)) {
continue;
}
if (obj1[prop] !== obj2[prop]) {
return false;
}
}
return true;
}
}

js 对 只包含简单类型数据的对象 为元素 组成的数组 进行去重的更多相关文章

  1. 6.Struts2简单类型数据的接受

    简单类型数据的接收 在Action类中定义与请求参数同名的属性, 即,要定义该属性的set方法,便能够使struts2自动接收请求参数并赋予同名属性. 简单类型数据的接受举例: 新建工程项目,名称为: ...

  2. fastjson转换包含date类型属性的对象时报错com.alibaba.fastjson.JSONException: For input string: "13:02:19"

    问题:time类型数据插入不进mysql数据库:调试的时候报如下错误: Caused by: java.lang.NumberFormatException: For input string: &q ...

  3. Js笔试题之返回只包含数字类型的数组

    如js123ldka78sdasfgr653 => [123,78,653] 一般做法 分析: 1.循环字符串每个字符,是数字的挑出来拼接在一起,不是数字的,就给他空的拼个逗号 2.将新字符串每 ...

  4. form提交表单中包含time类型数据

    当数据库和实体类中含有date类型的数据时 ,form提交的时间数据只是string类型的,所以不能直接写入到java实体类和数据库,经过百度找到了解决方法 ,特地挪过来: 在controller中增 ...

  5. excel控件只为简单写入数据表--github找到ExcelUtil笔记

    github地址 https://github.com/SargerasWang/ExcelUtil 文档地址 https://sargeraswang.com/blog/2018/11/27/exc ...

  6. JS DOM操作(五) Window.docunment对象——操作元素

    定位: var a = document.getElementByIt( "id" ) 同辈元素 var b = a.nextSibling;            -- 找 a ...

  7. javascript不同类型数据之间的运算是如何转换的

    js中不同类型的基础数据之间可以转换,这种转换是有规则可寻的,并非随意的随机的.在js中有5种基础类型数据:string.number.boolean.null.undefined,其中,常用于计算或 ...

  8. JAVA包装类介绍(一)(包装类、基本类型数据)

     1. 包装类把基本类型数据转换为对象      1.1每个基本类型在java.lang包中都有一个相应的包装类  2.包装类有何作用 2.1 提供了一系列实用的方法 2.2集合不允许存放基本数据类型 ...

  9. Java基础 -- 深入理解Java类型信息(Class对象)与反射机制

    一 RTTI概念 认识Claa对象之前,先来了解一个概念,RTTI(Run-Time Type Identification)运行时类型识别,对于这个词一直是 C++ 中的概念,至于Java中出现RT ...

随机推荐

  1. 简单介绍托管执行和 CLI

    目录 CIL 和 ILDASM 查看 myApp.dll 的 CIL 输出 使用 ILSpy 查看 myApp.dll 反编译后的代码 处理器不能直接解释程序集.程序集用的是另一种语言,即公共中间语言 ...

  2. 前后端分离crud(跨域问题)讲解

    1 前后端分离 1.1 后端 ssm+maven 多模块 swagger 文档描述(代码拷贝过来,就可以生成了,https://www.cnblogs.com/wings-xh/p/11991511. ...

  3. Python学习之编码

    Python2默认解释器的编码:ascii: Python3默认解释器的编码:UTF-8 ascii码:只会识别英文字母.数字和标点.8位表示一个英文字符,1个字节 万国码Uicode:目前的所有语言 ...

  4. 找不到UseInMemoryDatabase方法

    创建WebApi项目时,在ConfigureServices中注册数据库上下文时,提示找不到UseInMemoryDatabase方法. 打开“工具-Nuget包管理器-程序包管理器控制台”,输入“I ...

  5. ABAP分享六 alv显示的几种方式的简单示例

    方法1,也是大家常见的方法通过函数   REUSE_ALV_GRID_DISPLAY TYPES: BEGIN OF  ty_spfli,   "定义结构     carrid like s ...

  6. Codeforces Round #608 (Div. 2) 题解

    目录 Codeforces Round #608 (Div. 2) 题解 前言 A. Suits 题意 做法 程序 B. Blocks 题意 做法 程序 C. Shawarma Tent 题意 做法 ...

  7. 【30天自制操作系统】day02:寄存器和Makefile

    基本寄存器 AX(accumulator):累加寄存器 CX(counter):计数寄存器 DX(data):数据寄存器 BX(base):基址寄存器 SP(stack pointer):栈指针寄存器 ...

  8. jquery-获取button的值

    <button id="test" name="test_name" value="test_value"></butto ...

  9. js的cookies及html5的localStorage、sessionStorage

    1.首先,理解什么是cookies? cookies:存储在客户端,数据量小的,会过期的数据,以字符串形式存储 cookie操作代码示例: <script> window.onload = ...

  10. 如何让create-react-app锦上添花,满足实际需求?

    目录 前端部分 后端部分 create-react-app 是 React 官方为我们提供的一个单页应用脚手架,基于 webpack 配置了相关功能,babel. 图片处理.热加载.css 模块化.c ...