我有
var arr1 = ['a', 'b', 'c', 'd', 'e'];
我想创建一个新数组arr2,它由arr1的索引1和4组成。 我看过slice()但它只能按顺序工作。是否存在我缺少的现有方法或是否必须创建一个方法? 感谢。
答案 0 :(得分:5)
我想创建一个新数组arr2,它由arr1的索引1和5中的元素组成
这很简单,不需要方法,只需文字符号:
var arr2 = [arr1[1], arr1[5]];
(我应该注意你的数组中没有"索引5"你的意思是索引0和4?)
实例(使用1和5):
var arr1 = ['a', 'b', 'c', 'd', 'e'];
var arr2 = [arr1[1], arr1[5]];
console.log(arr2);

实例(使用0和4):
var arr1 = ['a', 'b', 'c', 'd', 'e'];
var arr2 = [arr1[0], arr1[4]];
console.log(arr2);

答案 1 :(得分:2)
只需分配它们吗?
var arr1 = ['a', 'b', 'c', 'd', 'e'];
var arr2 = [arr1[0],arr1[4]];
console.log(arr1)
console.log(arr2)

答案 2 :(得分:1)
您可以将想要的索引作为数组并映射值。
var array = ['a', 'b', 'c', 'd', 'e'],
indices = [1, 4],
result = indices.map(i => array[i]);
console.log(result);
答案 3 :(得分:0)
实现这一目标的另一种方法:
var arr1 = ['a', 'b', 'c', 'd', 'e'];
var arr2 = arr1.filter((it, index) => index === 0 || index === 4);
console.log(arr2);