如何在 JavaScript 中克隆数组?2025年3月2日 | 阅读 4 分钟 引言JavaScript 是 Web 开发的语言之一。它可以执行许多操作。此外,还有许多用于排序、滚动、选择、切片和查找以处理整个数组的方法。在本文中,我们将通过执行来检查每种方法,并且我们还将学习如何复制数组。 我们需要创建一个与主数组或原始数组相同的新数组,其中包含相同的数字,以便在 JavaScript 中更改数组。 有许多方法可以克隆 JavaScript 中的数组。我们将使用下面提供的方法检查克隆数组的每种方法 Array.slice()Array.slice 是一种方法,可以从原始数组中删除特定的条目或数字。当我们不需要某些数字时,可以使用此方法。我们需要首先拆分数组并复制一组,通过选择开始和结束点。 以下代码显示了如何切片和 Array。 代码 输出 ![]() 如果 slice() 方法在没有参数的情况下调用,它将从特定索引开始复制原始数组到末尾。切片数组就是 mainArray 的一个副本。在上面的情况下,slice() 函数基于数字(1,2)返回“[2]”。数字范围从 0 到 2。 重要的是要注意,当我们使用 slice() 方法处理多个数组时,将分配引用而不是值。 Array.concat()此方法将通过添加、合并或连接多个数组为我们提供一个新数组。 让我们在下面讨论这种连接方法 代码 输出 ![]() Array.mapArray.map() 方法将为我们提供一个输出,该输出也是一个数组,其大小与输入数组相同。Map() 为数组中的每个项生成一个新数组。Map() 函数在内部为空时不起作用。Map 函数不会更改原始数组。 代码 输出 ![]() 此程序使用 Array.map 方法创建数组的副本。map() 函数在数组的每个元素上执行指定的函数,并将结果返回到一个新数组中。 Array.filterArray.filter() 函数,类似于 map(),输出一个数组,但结果数组的大小可能不总是相同的。Filter() 检查一个函数和一个条件,并在满足条件时返回该元素。 代码 输出 ![]() 上面提到的程序通过使用 Array.filter 方法创建数组的副本。filter() 函数评估 nums 列表中的条件。如果满足要求,数字将被放入一个名为 numsClone 的新数组中。 Array.reduceArray.reduce() 遍历数组的每个元素,并产生一个代表函数最终结果的单个值或对象。 语法 代码 输出 ![]() 在提到的程序中,reduce 函数用于减少程序中数字的数量。在这种情况下,我们从一个空的 normalArray 开始,然后我们逐步包含 "num" 数组中的每个元素。必须返回该数组才能在下次迭代中使用该方法。返回数组 numClone 的引用。数字数组将被复制到 numClone 数组中。 JSON.stringify 和 JSON.parseJSON.stringify 将对象转换为字符串,JSON.parse 将字符串转换为对象。当您结合这些内容时,您可以将某物转换为字符串,然后将其转换回一种新的信息类型。 JSON.parse() 和 JSON.stringify() 用于多级深度复制。它们复制任何级别的每个值而不是引用,并处理多维数组。 代码 输出 ![]() 上面的程序使用 JSON.stringify 将 Array1 转换为字符串。使用 JSON.parse 将字符串转换为名为 Array2 的多维数组。此方法返回数组元素的副本而不是引用。输出显示更改 Array2 不会影响 Array1。 注意:您可以使用此方法安全地复制深度嵌套的数组。结论
|
什么是数组?在 JavaScript 中,数组是一种数据结构,其中可以在一个变量中存储多个值。这些值称为元素,可以是任何类型的数字、字符串或对象。数组在处理捕获的数据时可以发挥重要作用...
5 分钟阅读
目前,由于其丰富的功能集、大量的扩展和用户友好的工具,开发人员在 Visual Studio Code (VS Code) 中进行开发和调试代码。Visual Studio Code 可以被确切地描述为 JavaScript 的高级版本 - 一个...
阅读 3 分钟
JavaScript 的 ignoreCase 属性有助于返回一个布尔值,以查看“i”修饰符的可用性。如果设置了“i”修饰符,输出将显示 true 值;否则,它将显示 false。ignore-case 属性提供非区分大小写的操作。语法... (此文本不完整,因此无法翻译)
阅读 2 分钟
在本文中,我们将了解 JavaScript 中的 FizzBuzz 程序。让我们先了解一下“FizzBuzz”是什么。FizzBuzz FizzBuzz 通常是一个供儿童玩的游戏,通过这个游戏他们学习如何整除数字。在这个游戏中,参与者围成一圈,然后从...
阅读 4 分钟
链表是最基本的数据结构之一。在接下来的部分中,我们将探索链表的类型,然后我们将用 JavaScript 实现链表。在本文结束时,您将了解链表,并且您将...
阅读 6 分钟
过去,JavaScript 只能在客户端浏览器中运行。随着技术的发展,Web 开发也随之发展。以前的网站是静态的,这意味着它们只显示信息,但现在它们已变得动态,包含许多可以交互的内容...
5 分钟阅读
简介:使用 JavaScript 中的 forEach() 导航对象迭代:凭借其灵活且生动的特性,JavaScript 开发人员可以开发出色且交互式的 Web 应用程序。无论您是高级开发人员,还是这是您第一次接触 JavaScript,能够成功地迭代数据结构对于...至关重要。
阅读20分钟
JavaScript 是一种用途广泛且广泛使用的编程语言,尤其是在 Web 开发中。在 JavaScript 中相加两个数字是使用该语言时遇到的最基本的操作之一。在本文中,我们将探讨在 JavaScript 中相加两个数字的各种方法,以满足...
阅读 3 分钟
JavaScript 中的递归是一种编程方法,其中函数调用自身一次或间接调用以解决问题。递归是一种有效的方法,它有助于将函数定义为自身,从而可以优雅地解决某些样式的难题。存在一些...
7 分钟阅读
简介:在 JavaScript 中合并数组是数据处理中的一项基本思想,它允许开发人员将来自多个来源的杂乱数据转化为标准、连贯的单元。合并数组是一项常规且重要的操作,用于(数据聚合、简化代码等)并且服务于...
5 分钟阅读
我们请求您订阅我们的新闻通讯以获取最新更新。
我们提供所有技术(如 Java 教程、Android、Java 框架)的教程和面试问题
G-13, 2nd Floor, Sec-3, Noida, UP, 201301, India