📅  最后修改于: 2023-12-03 15:08:15.031000             🧑  作者: Mango
在JavaScript中,我们经常需要从数组中减去一些数字。但是有时候,我们希望从数组的右侧开始减少数字。本文将介绍如何在JavaScript中实现这一需求。
pop()
方法我们可以使用数组的pop()
方法来从数组的右侧开始减去数字。这个方法会将数组的最后一个元素弹出,并返回该元素的值。
let arr = [1, 2, 3, 4, 5];
let lastElement = arr.pop();
console.log(lastElement); // 5
console.log(arr); // [1, 2, 3, 4]
通过反复调用pop()
方法,我们可以从数组的右侧开始一次性减去多个数字。
let arr = [1, 2, 3, 4, 5];
let numToSubtract = 3;
for (let i = 0; i < numToSubtract; i++) {
arr.pop();
}
console.log(arr); // [1, 2]
splice()
方法另一种从数组的右侧开始减去数字的方法是使用数组的splice()
方法。此方法可以删除数组中的任意位置的元素,包括最后一个元素。
let arr = [1, 2, 3, 4, 5];
let start = arr.length - 1;
let deleteCount = 1;
arr.splice(start, deleteCount);
console.log(arr); // [1, 2, 3, 4]
我们可以使用循环和splice()
方法一次性减去多个数字。
let arr = [1, 2, 3, 4, 5];
let numToSubtract = 3;
for (let i = 0; i < numToSubtract; i++) {
let start = arr.length - 1;
let deleteCount = 1;
arr.splice(start, deleteCount);
}
console.log(arr); // [1, 2]
slice()
方法和concat()
方法最后,我们可以使用slice()
方法和concat()
方法来从数组的右侧开始减去数字。我们可以使用slice()
方法获取数组的前面一部分,然后使用concat()
方法将这些部分组合在一起。
let arr = [1, 2, 3, 4, 5];
let start = 0;
let end = arr.length - 1;
let newArr = arr.slice(start, end);
console.log(newArr); // [1, 2, 3, 4]
// 从右侧减去一个数
newArr = newArr.slice(start, -1);
console.log(newArr); // [1, 2, 3]
// 从右侧减去多个数
newArr = newArr.slice(start, -3);
console.log(newArr); // [1]
在从数组的右侧减去多个数字时,我们可以将slice()
方法中的第二个参数设置为一个负数,表示从右侧开始计算要保留的元素的数量。