Google Apps脚本:查找数组中每个项目的位置

问题描述 投票:0回答:3

我想遍历一维数组中的每个项目,并在另一个一维数组上执行indexOf以确定其匹配的位置。

如果我有:

数组1 = [“ a”,“ d”,“ e”]

数组2 = [“ a”,“ b”,“ c”,“ d”,“ e”,“ f”]

我想将值从数组1转换为匹配的位置,使其变为:[0,3,4]。

我尝试了下面的等式,但是没有用。我以为使用forEach()可以遍历数组1中的每个项目。然后我可以运行一个函数对每个项目在Array 2上执行indexOf()。我在做什么错??

var array1 = ["a","d","e"];
var array2 = ["a","b","c","d","e","f"];

var array1count = array1.forEach( function (e) { array2.indexOf( e )});

Logger.log(array1count)

我想遍历1D数组中的每个项目,并在另一个1D数组上执行indexOf以确定其匹配位置。如果我有:数组1 = [“ a”,“ d”,“ e”]数组2 = [“ a”,“ b”,“ c”,“ d”,“ e”,“ f”] .. 。

javascript arrays google-apps-script indexof
3个回答
2
投票

如果array1array2具有相同的顺序,则可以对索引进行闭包,并在回调内部使用while循环来映射找到的索引。


1
投票

[forEach()返回undefined,您可以尝试使用Array.prototype.reduce()


0
投票

我运行了这个方程,它起作用了。似乎非常简单明了。希望我不会在这里错过其他答案可以解决的问题。

© www.soinside.com 2019 - 2024. All rights reserved.