【问题标题】:Removing duplicate values from an array of elements by invoking the function通过调用函数从元素数组中删除重复值
【发布时间】:2019-08-29 01:52:16
【问题描述】:

我想要以下函数,当被调用以返回不重复的元素数组时

const removeDuplicates = nums => {
 var result = Array.from(new Set(nums));
  console.log(result)   
}
removeDuplicates([1,1,2,2,3])

基本上,我希望这个函数在没有console.log 的情况下工作 但是调用它,就像这样removeDuplicates([1,1,2,2,3]) 请注意,return 在这种情况下不起作用,因为它会阻止调用该函数。

附:我已经阅读了很多与我的问题相关的答案,但是他们并没有专门回答我的问题;特别是,我想用提供的元素数组调用removeDuplicates 函数,如下所示:removeDuplicates([1,1,2,2,3]),我希望它返回没有重复的元素。

【问题讨论】:

  • 为什么return Array.from(new Set(nums)) 不是一个选项?
  • 只返回 Array.from...
  • 是的,谢谢,我尝试代码的 repl 无法正常工作,我猜是因为我选择创建 JS/HTML/CSS repl 而不仅仅是 Javascript
  • 在那个 repl 可以登录到控制台或在 dom 中使用结果做一些事情。脚本正在运行,你只是没有对结果做任何事情

标签: javascript arrays duplicates


【解决方案1】:

我希望它返回元素

所以添加一个return

const removeDuplicates = nums => {
  return Array.from(new Set(nums));
}

const res = removeDuplicates([1, 1, 2, 2, 3])

console.log(res)

或者使用隐式返回

const removeDuplicates = nums => Array.from(new Set(nums));

【讨论】:

  • 是的,这是非常合乎逻辑/正确的;但是它不起作用,我正在 repl 上尝试,这是链接:repl.it/@umbur/FaintSlushyModel
  • 我没有看到你在 repl 中用 res 做任何事情
  • 您提供的代码在该 repl 的 script.js 中;但是它在这个 repl 上运行良好,它是通过仅选择 JS 创建的:repl.it/@umbur/HotSerpentineProcedurallanguage
  • 了解...添加并再次运行document.body.innerHTML = JSON.stringify(res),如果您登录到控制台,repl 控制台将工作
  • 不起作用,但我想这并不重要,因为现在问题已经解决了;再次感谢!
猜你喜欢
  • 2021-12-31
  • 2013-05-20
  • 2011-07-03
  • 2010-10-13
  • 1970-01-01
  • 1970-01-01
  • 2011-01-11
相关资源
最近更新 更多