前端面试题 – 98. 三维数组的打平、排序和去重

const input = [1, 11, [2, [4, 3], 'a'], '8', 2];

// 打平函数
const flattenArray = (arr) 
    => arr.reduce((acc, val) 
        => Array.isArray(val) 
            ? acc.concat(flattenArray(val)) 
            : acc.concat(val), []);

// 去重并排序函数
const removeDuplicatesAndSort = (arr) 
    => [...new Set(arr)].sort((a, b) => a - b);

const result = removeDuplicatesAndSort(flattenArray(input));

console.log(result); // [1, 2, 3, 4, 8, 11]

© 版权声明
THE END
喜欢就支持一下吧
点赞0

Warning: mysqli_query(): (HY000/3): Error writing file '/tmp/MYe68N0O' (Errcode: 28 - No space left on device) in /www/wwwroot/583.cn/wp-includes/class-wpdb.php on line 2345
admin的头像-五八三
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

图形验证码
取消
昵称代码图片