getRepeat这个方法是哪里不对呢,怎么结果与预期不符合

// 获得去重之后的数组
Array.prototype.noRepeat = function () {
    return [...new Set(this)];
}
// 被删除的重复条目的新数组
Array.prototype.getRepeat = function () {
    let noRepeat = new Set(this.noRepeat());
    return this.filter((x) => {
      !noRepeat.has(x)
    })
}
let arr1 = [1,2,3,4,5,4,3,2];
let arr2 = ['a','b','c','d','e','d','c'];

let arr1_0 = arr1.noRepeat()
let arr1_1 = arr1.getRepeat()

let arr2_0 = arr2.noRepeat()
let arr2_1 = arr2.getRepeat()
//getRepeat这个方法是哪里不对呢,怎么结果与预期不符合?

getRepeat这个方法是哪里不对呢,怎么结果与预期不符合?🤔#笔试题目##前端工程师#
全部评论
noRepeat获得去重之后的元素,在原先数组中即使没有重复的元素也会在noReapeat中,如你的arr2中的e,在filter时就无法过滤没有重复的元素 另外filter的回调函数应该加一个return吧
点赞 回复 分享
发布于 2020-10-16 00:01

相关推荐

11-13 18:32
门头沟学院 Java
点赞 评论 收藏
分享
10-21 23:48
蚌埠坦克学院
csgq:可能没hc了 昨天一面完秒挂
点赞 评论 收藏
分享
11-03 14:38
重庆大学 Java
AAA求offer教程:我手都抬起来了又揣裤兜了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务