Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从端点删除元素的javascript拼接方法_Javascript - Fatal编程技术网

从端点删除元素的javascript拼接方法

从端点删除元素的javascript拼接方法,javascript,Javascript,我试图删除2个元素从结束使用拼接方法 这就是我所尝试的 const arr = [3,4,5,6,7]; arr.splice(-1, 2) 我期望arr为[3,4,5],但arr值为[3,4,5,6] 想了解它为什么会这样 开始 开始更改数组的索引。如果大于 数组的长度,“开始”将设置为数组的长度如果 否,它将从数组末尾开始许多元素。 (在本例中,原点-1表示-n是第n个最后一个的索引 元素,因此相当于array.length的索引- n、 )如果array.length+start小于0,

我试图删除2个元素从结束使用拼接方法 这就是我所尝试的

const arr = [3,4,5,6,7];
arr.splice(-1, 2)
我期望arr为[3,4,5],但arr值为[3,4,5,6]

想了解它为什么会这样

开始

开始更改数组的索引。如果大于 数组的长度,“开始”将设置为数组的长度如果 否,它将从数组末尾开始许多元素。 (在本例中,原点-1表示-n是第n个最后一个的索引 元素,因此相当于array.length的索引- n、 )如果array.length+start小于0,它将从索引开始 0


索引
-1
表示从最后一个元素开始,因此在我们的例子中,只有最后一个元素将被删除。

您只需从数组的最后一个索引开始并删除两个项目

结果是一个没有
7
的数组

/-1索引
常数arr=[3,4,5,6,7];
arr.拼接(-1,2);
控制台日志(arr)
const arr=[3,4,5,6,7];
const itemsToDelete=2;
阵列拼接(阵列长度-itemsToDelete,itemsToDelete)

控制台日志('arr',arr)最简单的方法是使用arr.length

const arr=[3,4,5,6,7];
对边拼接(对边长度-2)

console.log(arr)
-1
是从末尾开始的索引计数。因此,您开始从末尾删除一个条目。您需要
拼接(-2,2)
。这在阅读中得到了很好的解释:逻辑应该是
.splice(array.length-count,count)
.splice(-count,count)
。第一种方法总是首选。您可以省略第二个参数,
。splice(-2)
就足够了