这个问题对于 Array 练习是一个很好的例子,并且也是面试中经常遇到的。
解题方法有多个,下面会逐个说下。
一、遍历用遍历的方法实现应该是最先想到的方法。这个就需要对需要合并的数组合并再重新排序。
1、遍历两个数组
2、每一项:判断合并后的数组中是否有当前项(去重)
/** * 对其中一个遍历去重 * @param {Array} arr1 * @param {Array} arr2 * @returns 合并后的有序去重数组 */ function unionArray(arr1,arr2) { arr2.map(item=>{ !arr1.includes(item) && arr1.push(item) }) return arr1.sort() }