我有第一个值数组和第二个索引数组.我想过滤第一个数组,只返回第二个数组中有索引的值.
所以,给定:
arr1 = [4775453877338112, 5901353784180736, 6605041225957376]
arr2 = [0,2]
Run Code Online (Sandbox Code Playgroud)
我想回复:
output = [4775453877338112, 6605041225957376]
Run Code Online (Sandbox Code Playgroud)
谢谢.对于奖励积分,为什么以下不起作用?
var output = arr1.filter( (item) => arr1.indexOf(item) in arr2 === true )
抱歉,如果这个简单的问题与此重复:基于索引数组的过滤器数组,但是下划线让我失望.
对于奖励积分,为什么以下不起作用?
因为你正在检查,如果指数出现在arr2
,而不是项目本身.
只需简单地使用一个 map
var output = arr2.map( s => arr1[s] );
Run Code Online (Sandbox Code Playgroud)
演示
var arr1 = [4775453877338112, 5901353784180736, 6605041225957376];
var arr2 = [0,2];
var output = arr2.map( s => arr1[s] );
console.log( output );
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
243 次 |
最近记录: |