首页 > 编程语言 >JavaScript 去重-对象数组中的重复对象

JavaScript 去重-对象数组中的重复对象

时间:2023-08-25 16:00:33浏览次数:53  
标签:Set 对象 JavaScript JSON 数组 字符串

先showCode

Array.from(new Set(myArray.map(JSON.stringify)), JSON.parse)
  1. myArray是一个对象数组,它是源数据。
  2. map(JSON.stringify) 的作用是将每个对象转换为 JSON 字符串。JSON.stringify 方法将 JavaScript 对象转换为 JSON 字符串表示。
  3. new Set(...) 创建一个新的 Set 对象,并将上一步转换得到的 JSON 字符串数组作为参数传入。Set 对象只会存储唯一的值,因此所有重复的字符串都会被自动去重。
  4. Array.from(..., JSON.parse) 将 Set 对象转换为数组。Array.from 方法根据给定的可迭代对象或类数组对象创建一个新的数组。在这里,我们将 Set 对象作为第一个参数传递,并使用 JSON.parse 作为第二个参数,以便将每个字符串转换回原始的 JavaScript 对象。

综上,该行代码的作用是从对象数组 myArray 中获取唯一的元素,并将它们转换回原始的 JavaScript 对象

标签:Set,对象,JavaScript,JSON,数组,字符串
From: https://www.cnblogs.com/Sunshinezty/p/17657169.html

相关文章

  • 【MySQL 8.0】通过mysqlpump实现数据库对象的逻辑备份与恢复
    转储数据库mysqlpump-uroot-p--all-databases>full.sqlmysqlpump-uroot-p--all-databases--exclude-databases=soe>full.sqlmysqlpump-uroot-p--databasestpcc10>tpcc10.sqlmysqlpump-uroot-p--parallel-schemas=4:tpcc10>tpcc10.sql......
  • 面向对象设计原则
    前言在面向对象的软件设计中,只有尽量降低各个模块之间的耦合度,才能提高代码的复用率,系统的可维护性、可扩展性才能提高。面向对象的软件设计中,有23种经典的设计模式,是一套前人代码设计经验的总结,如果把设计模式比作武功招式,那么设计原则就好比是内功心法。常用的设计原则有七个......
  • Leetcode1636——按照频率将数组升序排序
    给你一个整数数组 nums ,请你将数组按照每个值的频率 升序 排序。如果有多个值的频率相同,请你按照数值本身将它们 降序 排序。 请你返回排序后的数组。 示例1:输入:nums=[1,1,2,2,2,3]输出:[3,1,1,2,2,2]解释:'3'频率为1,'1'频率为2,'2'频率为3。示例2:输入:nu......
  • AWC数组显示框aw-widget初始加载时没有把数组显示出来的问题
    1、html<aw-widgetprop="data.aaaa"></aw-widget>2、model.json"aaaa":{"displayName":"aaaa","type":"STRINGARRAY","isRequired":......
  • 二维数组和交错数组
    usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceConsoleApp1{classProgram{staticvoidMain(string[]args){//交错数组Console.......
  • js判断一个元素是否在数组内
    vararr=newArray("a","ab");//使用jquery方法if($.inArray("a",arr)>-1){alert("在")}//自己写functioncontains(arr,val){vari=arr.length;while(i--){if(arr[i]===val){......
  • vue监听对象属性值发生变化
    监听对象属性object里面属性值的变化。exportdefault{data(){return{object:{username:'',password:''}}}} 方法一:直接根据watch来监听。exportdefault{data(){......
  • 5.JAVA数组
     数组声明创建 内存的使用 定义数组时数组并不存在;只有创建数组是才存在           ......
  • 解决访问 Amazon S3 对象时遇到的“访问被拒绝”错误
    作为AmazonS3的用户,在尝试访问S3存储桶中的对象时,您可能会遇到“访问被拒绝”错误。这些错误表示请求缺少执行所请求操作的有效凭证或权限策略。在本博文中,我将介绍各种故障排除步骤和配置检查,以解决访问S3对象时遇到的“访问被拒绝”错误。亚马逊云科技开发者社......
  • 代码随想录第二天|977.有序数组的平方;209.长度最小的子数组;59.螺旋矩阵II,总结
    今天的这三道题每道题对我来说都不简单,有序数组的平方和长度最小的子数组这两道题还能用暴力求解,螺旋矩阵看着简单却没有思路,磨了半小时还是决定直接看讲解有序数组平方和用的双指针的思想,代码如下:1classSolution{2public:3vector<int>sortedSquares(vector<int......