Javascript 从排序数组中删除重复项-带集合(ES6)

Javascript 从排序数组中删除重复项-带集合(ES6),javascript,algorithm,set,Javascript,Algorithm,Set,我正在用JS制作Leetcode 问题26(从排序数组中删除重复项) 我正在尝试使用Set(ES6),但是它在Leetcode页面上不起作用(用于直接提交),但是它在控制台中起作用 此外,我还发现以前的答案已经将Set列为解决方案。 给你 在旧帖子中,作者说: ES6提供了Set对象,这使事情变得更加简单 以下是我与Set的代码: //this is my code with Set var removeDuplicates = function(nums) { let set = n

我正在用JS制作Leetcode

问题26(从排序数组中删除重复项)

我正在尝试使用Set(ES6),但是它在Leetcode页面上不起作用(用于直接提交),但是它在控制台中起作用

此外,我还发现以前的答案已经将Set列为解决方案。 给你

在旧帖子中,作者说:

ES6提供了Set对象,这使事情变得更加简单

以下是我与Set的代码:

//this is my code with Set

var removeDuplicates = function(nums) {
    let set = new Set(nums);
    let setArr = [...set];
    return setArr;
};


下面是代码在Leetcode页面上运行后显示的内容,输出与预期不同:

这是网页控制台上的显示


有谁能帮助我理解背后的原因吗?或者我只是误解了这个问题?谢谢大家!

您的函数可以完美地从阵列中删除重复项,但它不执行leetcode任务:

给定一个已排序的数组nums,在适当的位置删除重复项,使每个元素只出现一次并返回新的长度

不要为另一个数组分配额外的空间,必须通过使用O(1)个额外内存修改输入数组来完成此操作


此外,预期回报是一个数字,而不是一个数组。它声明您需要返回新数组的长度(唯一元素的数量)。

您的函数可以完美地从数组中删除重复项,但它不执行leetcode任务:

给定一个已排序的数组nums,在适当的位置删除重复项,使每个元素只出现一次并返回新的长度

不要为另一个数组分配额外的空间,必须通过使用O(1)个额外内存修改输入数组来完成此操作


此外,预期回报是一个数字,而不是一个数组。它指出您需要返回新数组的长度(唯一元素的数量)。

Leetcode可能正在运行某种旧的/损坏的引擎/transpiler。
set.from(set)
而不是
[…set]
行吗?顺便说一句,我不会使用
set
作为变量名,因为这是一个具有特殊含义的单词,取决于上下文。我尝试了使用Array.from(set)。length,仍然不起作用,结果与[…set]相同。length谢谢,你说得对,我不应该使用set作为变量名,它会导致confusions@Ry-Leetcode工作正常^^,图中显示Leetcode运行成功(但回答错误),而不是错误Leetcode可能正在运行某种旧的/损坏的引擎/传输程序。
set.from(set)
而不是
[…set]
行吗?顺便说一句,我不会使用
set
作为变量名,因为这是一个具有特殊含义的单词,取决于上下文。我尝试了使用Array.from(set)。length,仍然不起作用,结果与[…set]相同。length谢谢,你说得对,我不应该使用set作为变量名,它会导致confusions@Ry-Leetcode工作正常^^,图中显示了Leetcode在我使用[…新设置(num)]时给出了成功运行(但回答错误)而不是错误。长度,它仍然不工作,如果我在控制台下运行此代码,它表明correctly@puddlejumper26在这种情况下,长度将是正确的,但您仍然没有完成任务:在适当的位置删除重复项,这意味着修改给定给您的数组,以便前x个元素与它所具有的唯一元素按排序顺序相对应。它还说,不要为另一个阵列分配额外的空间,因此也禁止使用新的集合(NUM)。谢谢,现在我正在赶上。我误解了“不要为另一个数组分配额外空间”部分。当我使用[…new Set(num)].length时,它仍然不起作用,如果我在控制台下运行此代码,它会显示correctly@puddlejumper26在这种情况下,长度将是正确的,但您仍然没有完成任务:将重复项移除到位,这意味着修改给定给您的数组,使前x个元素按照排序顺序对应于它所具有的唯一元素。它还说,不要为另一个阵列分配额外的空间,因此也禁止使用新的集合(NUM)。谢谢,现在我正在赶上。我误解了“不要为另一个数组分配额外空间”部分。
//this is my code with Set

var removeDuplicates = function(nums) {
    let set = new Set(nums);
    let setArr = [...set];
    return setArr;
};