news 2026/4/19 16:19:56

数组去重(JS)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
数组去重(JS)
输入:[1,1,1,2,2,3,3,4,5,1];输出:[1,2,3,4,5];输入:[1,1,1];输出:[1];
functionmyUniq(arr){// Create an empty object to keep track of unique elementsconstuniqueElements={};// Iterate through the array and add elements to the objectfor(constelementofarr){uniqueElements[element]=true;}// Create a new array from the object's keys (which are the unique elements)constresultArray=Object.keys(uniqueElements).map(Number);returnresultArray;}module.exports=myUniq;
  • 遍历与记录
for(constelementofarr){uniqueElements[element]=true;}

假设输入是 [1, 2, 1]:

遇到第一个 1:对象变成 { “1”: true }
遇到 2:对象变成 { “1”: true, “2”: true }
遇到第二个 1:对象依然是 { “1”: true, “2”: true }(重复的键被覆盖了)

  • 类型转换
constresultArray=Object.keys(uniqueElements).map(Number);
  • Object.keys(uniqueElements): 这个方法会提取对象中所有的键名,返回一个字符串数组,
    例如 [“1”, “2”]。
  • .map(Number): 因为对象的键名永远是字符串,而题目要求处理的是数字数组,所以需要通过 .map(Number) 将字符串 [“1”, “2”] 转回数字 [1, 2]。

这种方法的逻辑是:“先把数字存成对象的标签(自动去重),再把标签撕下来转回数字。”

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/17 17:21:45

初学者如何通过工作负载分析掌握项目进度与资源分配

你是否也经历过这样的项目困境:团队忙得焦头烂额,却总有人无事可做;任务堆积如山,却说不清到底卡在了哪里?明明每个人都看似在工作,项目进度却一再拖延——这背后,很可能不是努力不够&#xff0…

作者头像 李华
网站建设 2026/4/17 16:26:46

CSS2 表格布局入门:前端新人也能轻松驾驭的排版利器

CSS2 表格布局入门:前端新人也能轻松驾驭的排版利器CSS2 表格布局入门:前端新人也能轻松驾驭的排版利器引言:给老伙计一个重新自我介绍的机会table-layout 到底是个啥?先给 W3C 规范配个人话翻译机auto 与 fixed:一场龟…

作者头像 李华
网站建设 2026/4/18 0:48:58

(100分)- 部门人力分配(Java JS Python C)

(100分)- 部门人力分配(Java & JS & Python & C)题目描述部门在进行需求开发时需要进行人力安排。当前部门需要完成 N 个需求,需求用 requirements 表述,requirements[i] 表示第 i 个需求的工作量大小,单位…

作者头像 李华
网站建设 2026/4/18 23:11:37

(100分)- 测试用例执行计划(Java JS Python C)

(100分)- 测试用例执行计划(Java & JS & Python & C) 题目描述 某个产品当前迭代周期内有 N 个特性(F1,F2,......FN)需要进行覆盖测试,每个特性都被评估了对应的优先级,特性使用其 ID 作为下…

作者头像 李华
网站建设 2026/4/18 6:09:43

智慧铁路之受电弓接触点识别 铁路输电线路鸟巢识别 铁路异物入侵巡检识别 铁路风筝识别 列车绝缘子检测 轨道交通场景下异物识别 户外线缆及附属部件的智能监测 10325期

智慧铁路识别类别介绍 Classes (19) 类别(19) CJumper C型 jumper ClothesHanging 挂着的衣服 GJumper 跳线 baloon 气球 bird_nest 鸟巢 bird_strike 鸟击 cantilever 悬臂 crossover 交叉线 damage_insulator 损坏的绝缘子 drop_wire 引入线 dropper 吊…

作者头像 李华