在Javascript中对数组的每个字符串值元素进行切片

在Javascript中对数组的每个字符串值元素进行切片,javascript,arrays,slice,Javascript,Arrays,Slice,我有以下数组: var arr = ["Toyota", "Hyundai", "Honda", "Mazda"]; 我想向后分割每个元素,如: var arr = ["Toyota", "Hyundai", "Honda", "Mazda"].slice(-2); 因此,它将返回: arr = ["Toyo", "Hyund", "Hon", "Maz"]; 可能吗?或者是否有这样做的方法?不使用数组.prototype.,不。请尝试数组.prototype.: var-arr=[“丰

我有以下数组:

var arr = ["Toyota", "Hyundai", "Honda", "Mazda"];
我想向后分割每个元素,如:

var arr = ["Toyota", "Hyundai", "Honda", "Mazda"].slice(-2);
因此,它将返回:

arr = ["Toyo", "Hyund", "Hon", "Maz"];

可能吗?或者是否有这样做的方法?

不使用
数组.prototype.
,不。请尝试
数组.prototype.

var-arr=[“丰田”、“现代”、“本田”、“马自达”].map(s=>s.slice(0,-2));

控制台日志(arr)
您不能直接使用
slice
,因为它对数组有不同的含义,并将返回数组元素列表

var arr = ["Toyota", "Hyundai", "Honda", "Mazda"]
arr.slice(0, -2) // returns the elements ["Toyota", "Hyundai"]
为了对每个元素进行切片,可以使用
.map()
(在IE9+上):

或者,您可以使用一个循环:

var i, out = []
for (i = 0; i < arr.length; ++i) {
    out.push(arr[i].slice(0, -2))
}
var i,out=[]
对于(i=0;i
或者,用更现代的语法:

const out = new Array(arr.length)
for (let i = 0; i < arr.length; ++i) {
    out[i] = arr[i].slice(0, -2)
}
const out=新数组(arr.length)
对于(设i=0;i
您不想通过for循环遍历每个数组成员并将每个数组成员切片2个字符吗?
const out = new Array(arr.length)
for (let i = 0; i < arr.length; ++i) {
    out[i] = arr[i].slice(0, -2)
}