JavaScript 中的拼接与切片
JavaScript 数组是具有预定义属性的特殊对象。这些是可以分配给作为输入参数传递的值的数值属性。JavaScript 提供了几种处理数组的方法。一些比较流行的数组方法是 .push()
、.pop()
、.reverse()
等。所有这些方法都会改变数组。
在本文中,我们将了解 JavaScript 中 splice
和 slice
之间的区别。
JavaScript 中的 splice()
与 slice()
splice()
splice()
方法影响或修改数组的内容。它要么删除或替换现有元素和/或在适当位置添加新元素。
语法:
splice(start)
splice(start, deleteCount)
splice(start, deleteCount, item1)
splice(start, deleteCount, item1, item2, itemN)
JavaScript Splice 方法有三个参数,第一个是 start
。它是一个必需参数,用于指定开始修改数组的数组的起始位置/索引。如果它大于数组的长度,则将 start 设置为数组的长度。
在这种情况下,不会删除任何元素,但该方法的行为类似于求和函数,添加与提供的 [n*] 个元素一样多的元素。如果它是负数,它从数组末尾的那么多元素开始。
第二个参数是 deleteCount
,它是一个可选参数。该参数指定数组中要从头开始删除的元素个数。如果省略 deleteCount
或其值等于或大于 array.length - start
,则删除数组开头到结尾的所有元素,0 或负数,不删除任何项目。在这种情况下,你必须输入至少一篇新文章。
第三个参数是 item1, item2, ...
,它是一个可选参数。此参数指定要添加到数组中的元素,从开头开始。如果不指定项,splice() 只会消除数组的元素。
此方法返回一个包含已删除项目的数组。如果只删除一个元素,则返回一个元素的数组。如果没有删除任何元素,则返回一个空数组。有关更多信息,请阅读 splice 方法的文档。
const osConfig = ['Linux', 'Ubuntu', 'MacOS', 'Windows'];
console.log(osConfig, osConfig.splice(0, 2));
在上面的示例中,我们指定了不同类型的操作系统。当你尝试提取开源操作系统时,它会影响原始的 osConfig
数组并返回一个不包含开源操作系统名称的数组。当你在任何浏览器中运行上述代码时,它会打印出类似这样的内容。
输出:
["MacOS", "Windows"], ["Linux", "Ubuntu"]
切片()
slice() 方法从开始到结束将数组的一部分的浅拷贝返回到新选择的数组对象中,其中 start 和 end 是该数组中元素的索引。原始阵列不会受到影响或修改。splice()
方法可以接受 n 个参数,而 slice()
方法接受 2 个参数。
语法:
slice()
slice(start)
slice(start, end)
JavaScript slice()
方法包含两个参数,其中 start
是第一个参数,一个可选参数。此参数指定开始提取的索引。该索引从 0
开始。start
的默认值始终为 0
。如果 start 大于数组的长度,则返回一个空数组。
第二个参数是一个 end
,一个可选参数。此参数指定提取需要结束的端点。slice
提取到指定的索引但不包括结尾。例如,如果结尾是 n
,则提取的最后一个元素是 n-1
。如果未指定 end,则 slice 方法从数组的末尾提取。
此方法返回一个包含提取元素的新数组。有关更多信息,请阅读 slice 方法的文档。
const osConfig = ['Linux', 'Ubuntu', 'MacOS', 'Windows'];
console.log(osConfig, osConfig.slice(0, 2););
在上面的示例中,我们指定了不同类型的操作系统。当你尝试提取开源操作系统时,它不会影响原始的 osConfig
数组,而是会创建一个包含开源操作系统名称的新数组。当你在任何浏览器中运行上述代码时,它会打印出类似这样的内容。
输出:
["Linux", "Ubuntu", "MacOS", "Windows"], ["Linux", "Ubuntu"]
相关文章
Do you understand JavaScript closures?
发布时间:2025/02/21 浏览次数:108 分类:JavaScript
-
The function of a closure can be inferred from its name, suggesting that it is related to the concept of scope. A closure itself is a core concept in JavaScript, and being a core concept, it is naturally also a difficult one.
Do you know about the hidden traps in variables in JavaScript?
发布时间:2025/02/21 浏览次数:178 分类:JavaScript
-
Whether you're just starting to learn JavaScript or have been using it for a long time, I believe you'll encounter some traps related to JavaScript variable scope. The goal is to identify these traps before you fall into them, in order to av
How much do you know about the Prototype Chain?
发布时间:2025/02/21 浏览次数:150 分类:JavaScript
-
The prototype chain can be considered one of the core features of JavaScript, and certainly one of its more challenging aspects. If you've learned other object-oriented programming languages, you may find it somewhat confusing when you start
用 jQuery 检查复选框是否被选中
发布时间:2024/03/24 浏览次数:102 分类:JavaScript
-
在本教程中学习 jQuery 检查复选框是否被选中的所有很酷的方法。我们展示了使用直接 DOM 操作、提取 JavaScript 属性的 jQuery 方法以及使用 jQuery 选择器的不同方法。你还将找到许多有用的
jQuery 中的 Window.onload 与 $(document).ready
发布时间:2024/03/24 浏览次数:180 分类:JavaScript
-
本教程演示了如何在 jQuery 中使用 Window.onload 和 $(document).ready 事件。