LeetCode第217题:containsDuplicate函数第8行运行时错误求助
排查LeetCode 217题(存在重复元素)代码的运行时错误
你的代码第8行存在语法错误,这是导致运行时错误的核心原因:
if base !== diff return true
JavaScript规定if语句的条件表达式必须用圆括号()包裹,你省略了圆括号,执行环境无法正确解析这行代码,从而抛出错误。这个问题和变量名拼写、返回值顺序、比较运算符无关。
修正后的代码如下:
/** * @param {number[]} nums * @return {boolean} */ var containsDuplicate = function(nums) { let base = nums.length; let diff = [...new Set(nums)].length; if (base !== diff) return true else { return false } };
另外,这段代码还可以简化成更简洁的写法,逻辑完全一致:
var containsDuplicate = function(nums) { return nums.length !== new Set(nums).length; };
内容的提问来源于stack exchange,提问作者Sam McHargue
相关产品推荐
相关产品推荐

