[英]javascript: get subarray from an array by indexes
是否有一行代碼可以通過索引從數組中獲取子數組?
例如,假設我想要得到["a","c","e"]
從["a","b","c","d","e"]
由[0,2,4]
。 如何用一行代碼做到這一點? 像["a","b","c","d","e"][0,2,4]
..
你可以使用map
;
var array1 = ["a","b","c"]; var array2 = [0,2]; var array3 = array2.map(i => array1[i]); console.log(array3);
您可以使用Array#filter
和Array#includes
const array = ['a','b','c']; console.log(array.filter((x,i) => [0,2].includes(i)));
您可以使用過濾器
const arr = ['a', 'b', 'c']; const indexes = [0, 2]; const result = arr.filter((elt, i) => indexes.indexOf(i) > -1); document.body.innerHTML = result;
您可以使用Array.prototype.reduce()
const arr = ['a', 'b', 'c', 'd', 'e']; const indexes = [0, 2, 4]; const result = indexes.reduce((a, b)=> { a.push(arr[b]); return a; }, []); console.log(result);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.