JavaScript 数组精简技巧大全

0 下载量 68 浏览量 更新于2024-08-30 收藏 540KB PDF 举报
javascript 数组精简技巧小结 javascript 中的数组是最常见的一种数据结构,开发中经常用到数组。在这篇文章中,我们将提供一些小技巧,帮助提高开发效率。 **1. 删除数组的重复项** 删除数组中的重复项可以使用 Set 数据结构和展开运算符来实现。例如,`[...new Set(arr)]`,其中 `arr` 是要删除重复项的数组。 **2. 替换数组中的特定值** 有时在创建代码时需要替换数组中的特定值,可以使用 `splice` 方法。例如,`arr.splice(start, valueToRemove, valueToAdd)`,其中 `start` 是要开始修改的索引,`valueToRemove` 是要删除的值,`valueToAdd` 是要添加的新值。 **3. Array.from 达到 .map 的效果** `.from()` 方法可以用来获得类似 `.map()` 方法的效果且代码也很简洁。例如,`Array.from(arr, x => x * 2)`,其中 `arr` 是要处理的数组。 **4. 置空数组** 有时候我们需要清空数组,一个快捷的方法就是直接让数组的 `length` 属性为 0,例如,`arr.length = 0`。 **5. 将数组转换为对象** 有时候,出于某种目的,需要将数组转化成对象,一个简单快速的方法是使用展开运算符号 `...`,例如,`{ ...arr }`。 **6. 用数据填充数组** 在某些情况下,当我们创建一个数组并希望用一些数据来填充它,这时 `.fill()` 方法可以帮助我们。例如,`arr.fill(value, start, end)`,其中 `value` 是要填充的值,`start` 是要开始填充的索引,`end` 是要结束填充的索引。 **7. 数组合并** 使用展开操作符,也可以将多个数组合并起来。例如,`[...arr1, ...arr2, ...arr3]`,其中 `arr1`、`arr2`、`arr3` 是要合并的数组。 **8. 求两个数组的交集** 求两个数组的交集可以使用 `.filter()` 方法和 `.includes()` 方法。例如,`arr1.filter(x => arr2.includes(x))`,其中 `arr1` 和 `arr2` 是要求交集的数组。 **9. 从数组中删除虚值** 在 JS 中,虚值有 `false`, `0`, `''`, `null`, `NaN`, `undefined`。我们可以使用 `.filter()` 方法来过滤这些虚值。例如,`arr.filter(x => x)`,其中 `arr` 是要过滤的数组。 **10. 从数组中获取随机值** 有时我们需要从数组中随机选择一个值。一种方便的方法是可以根据数组长度获得一个随机索引。例如,`arr[Math.floor(Math.random() * arr.length)]`,其中 `arr` 是要选择的数组。 **11. 反转数组** 现在,我们需要反转数组时,没有必要通过复杂的循环和函数来创建它,数组的 `reverse` 方法就可以做了。例如,`arr.reverse()`,其中 `arr` 是要反转的数组。 **12. lastIndexOf() 方法** `lastIndexOf()` 方法可以用来查找数组中某个值最后一次出现的索引。例如,`arr.lastIndexOf(value)`,其中 `arr` 是要查找的数组,`value` 是要查找的值。 **13. 对数组中的所有值求和** JS 面试中也经常用 `reduce` 方法来巧妙的解决问题。例如,`arr.reduce((a, b) => a + b, 0)`,其中 `arr` 是要求和的数组。