如何在 JavaScript 中展平数组2025年1月7日 | 阅读 6 分钟 引言展平数组的技术将数组的 n 维减少到 1 维。简而言之,这意味着将几个嵌套数组合并为一个数组,以创建一个单一的一维数组。 仅仅减少数组的维数就称为展平数组。该方法包括将数组中存在的所有嵌套组件合并到一个单一的一维数组中。 例如: JavaScript 中使用 concat() 和 apply() 展平数组此函数使用concat()和apply()方法在 JavaScript 中展平数组。 JavaScript 中的实现输出 Original Array: [ 1, 2, [ 3, 4, 5 ], [ 6, 7, 8, 9 ], 10 ] Flattened Array: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 工作机制 第一步,我们构建了一个需要展平的数组。然后使用concat()和apply()例程展平了数组。concat()函数在应用一个参数数组作为参数后,将连接结果以创建一个单一的数组,这将把数组减少到一维。现在我们已经打印了展平后的数组。 使用 ES6 展开运算符在 JavaScript 中展平数组的程序使用这种技术,我们将使用ES6中的展开运算符在 JavaScript 中展平数组。 JavaScript 中的实现 输出 Original Array: [ 1, 2, [ 3, 4, 5 ], [ 6, 7, 8, 9 ], 10 ] Flattened Array: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 工作机制 第一步,我们构建了一个需要展平的数组。然后使用ES6 ('...')中的展开运算符展平了数组。当在要展平的数组前使用展开运算符“...”时,concat()函数将连接结果以创建一个单一的数组。现在我们已经打印了展平后的数组。 使用 reduce 方法在 JavaScript 中展平数组的程序使用此方法,我们将使用reduce方法在 JavaScript 中展平数组。 JavaScript 中的实现 输出 Original Array: [ 1, 2, [ 3, 4, 5 ], [ 6, 7, 8, 9 ], 10 ] Flattened Array: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 工作机制 第一步,我们构建了一个需要展平的数组。然后,我们使用 reduce 方法展平了数组。现在我们已经打印了展平后的数组。 使用 forEach() 在 JavaScript 中展平数组的程序在这个程序中,我们将使用forEach()循环在 JavaScript 中展平数组。 JavaScript 中的实现 输出 Original Array: [ [ 1, 2 ], [ 3, 4, 5 ], [ 6, 7, 8, 9 ], [ 10 ] ] Flattened Array: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 工作机制 第一步,我们构建了一个需要展平的数组。然后使用forEach()循环展平了数组。我们在forEach()循环内部使用展开运算符 '...'来展平数组。现在我们已经打印了展平后的数组。 使用 Reduce、Concat 和 IsArray 在 JavaScript 中展平数组的程序此方法通过重复使用reduce()、concat()和isArray()方法在 JavaScript 中展平数组。 JavaScript 中的实现 输出 Original Array: [ 1, 2, [ 3, 4, 5 ], [ 6, 7, 8, 9 ], 10 ] Flattened Array: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 工作机制 第一步,我们构建了一个需要展平的数组。然后使用concat()和isArray()函数展平了数组。当isArray()方法一次将数组的元素作为参数时,concat()函数将连接结果以创建一个单一的数组。现在我们已经打印了展平后的数组。 使用 while 循环和递归辅助函数在 JavaScript 中展平数组的程序此方法通过使用while循环和递归辅助函数在 JavaScript 中展平数组。 JavaScript 中的实现 输出 Original Array: [ [ 1, 2 ], [ 3, 4, 5 ], [ 6, 7, 8, 9 ], [ 10 ] ] Flattened Array: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 工作机制 第一步,我们构建了一个需要展平的数组。之后,使用栈和isArray()函数展平了数组。isArray()函数将数组作为一个参数,一次处理一个元素。如果提供的参数值包含多个元素,则数组将使用展开运算符进行展平,并将附加元素推送到堆栈中。否则,如果传递的参数只包含一个元素,我们将只添加该元素到最终列表。最终,我们在反转展平后的 arr 结果数组后返回该数组。 使用生成器函数在 JavaScript 中展平数组的程序此方法通过使用生成器函数在 JavaScript 中展平数组。 JavaScript 中的实现 输出 Original Array: [ 1, 2, [ 3, 4, 5 ], [ 6, 7, 8, 9 ], 10 ] Flattened Array: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 工作机制 第一步,我们构建了一个需要展平的数组。然后使用生成器函数展平了数组。生成器函数将接受数组和深度作为两个参数。深度表示数组的最大维度。在生成器函数内部,yield关键字用于启动或停止生成器函数。该函数总是使用"yield"来返回它接收到的任何值。现在我们已经打印了展平后的数组。 使用 flat() 方法在 JavaScript 中展平数组的程序此技术使用flat()函数在 JavaScript 中展平数组。在这里,我们可以看到一个错误和arr。flat()函数仅受NodeJS支持,而许多浏览器不支持,并且 flat 不是一个函数。 JavaScript 中的实现 输出 Original Array: [ 1, 2, [ 3, 4, 5 ], [ 6, 7, 8, 9 ], 10 ] Flattened Array: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ] 工作机制 第一步,我们构建了一个需要展平的数组。然后使用flat()函数展平了数组。该函数将使用flat()函数来展平并返回数组,该函数接受一个数组作为输入。现在我们已经打印了展平后的数组。 结论在讨论了多种在 JavaScript 中展平数组的方法后,我们可以得出以下结论。
下一个主题JavaScript 中的浅拷贝和深拷贝 |
在本篇文章中,我们将了解如何在 JavaScript 对象中获取键值。我们将了解如何获取键、如何获取值以及如何从 JavaScript 对象中获取键值对。获取 JavaScript 对象的键有多种方法...
阅读 4 分钟
简介应用程序必须吸引用户并易于使用,才能从他们那里收集信息。JavaScript 最强大的功能是能够接收用户输入并在浏览器内部进行处理。因此,谨慎的编码员会花时间来熟练掌握... (此文本不完整,因此无法翻译)
阅读 6 分钟
? 在 JavaScript 中,数组是存储项目集合的有效方法。我们可以用数组做的基本事情之一就是循环遍历其中的每个元素。让我们看看我们如何遍历...的不同方法。
阅读 6 分钟
在 JavaScript 中,onkeypress 事件是一个事件处理程序属性,它指定当在键盘上按下并释放键时要运行的函数。当键被物理按下然后释放时,此事件被触发。onkeypress 事件是一个键盘...
阅读 4 分钟
什么是?在 JavaScript 中,新行通常通过字符串中的特定转义序列或字符表示。它通常在许多编程语言中使用,以控制文本内容的格式并创建多个字符串。简单来说,...。
阅读 4 分钟
JavaScript,通常简称为“Javascript”或“JS”,是与 HTML 和 CSS 共同构成的网络语言之一。这种多功能性使开发人员能够创建动态网站、服务器端应用程序以及移动或桌面应用程序。因此,如果您是技术世界中有抱负的开发人员,...
阅读 6 分钟
JavaScript 包含一些控制流语句,包括 while、if、switch 和 for。然而,goto 语句是 JavaScript 中明显缺失的一种控制语句。总的来说,goto 在 C 等早期编程语言中用于跳转到代码的不同部分...
阅读 4 分钟
JavaScript 中的鼠标事件是什么?JavaScript 中的鼠标事件允许用户通过鼠标控制和交互网页。这些功能响应用户的单击、滑动、拖动和其他鼠标移动而触发特定的操作或移动。要处理鼠标事件,您必须使用...
阅读 6 分钟
JavaScript 提供了各种运算符来评估程序中的数学和逻辑运算符及表达式。增量和减量运算符是 JavaScript 中的两种一元运算符,它们将操作数的值加 1 或减 1。本文的目的是...
阅读 3 分钟
在本文中,我们将了解。ASCII 它代表美国信息交换标准代码。它是一种用于计算机之间通信的字符编码格式。它为数字、字母等提供了标准的数值。ASCII 中有 128 个唯一字符。它包含...
阅读 3 分钟
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India