Javascript Papa解析数据的查找/筛选

Javascript Papa解析数据的查找/筛选,javascript,papaparse,Javascript,Papaparse,我需要对从PapaParse中提取的数据进行Vlookup(excel)或筛选(如果n>1) // I know this is not asynchronous... function filteredData(err,filterkey,data,wantedColumn) { if (err) console.error(error); t = []; for (i=0;i< data.length;i++;) { if (data[i][0]

我需要对从PapaParse中提取的数据进行Vlookup(excel)或筛选(如果n>1)

// I know this is not asynchronous...
function filteredData(err,filterkey,data,wantedColumn) {
    if (err) console.error(error);
    t = [];
    for (i=0;i< data.length;i++;) {
        if (data[i][0] == filterkey) t[t.length] = data[i][wantedColumn];
    }
    return t;
}
//我知道这不是异步的。。。
函数filteredData(错误、filterkey、数据、wantedColumn){
如果(错误)控制台。错误(错误);
t=[];
对于(i=0;i
有没有比每次检查钥匙时都检查所有数据更快更好的方法?我的数据在我的键的[0]列中排序。(必须有很多更简单的方法,但是否有内置的方法?)

我用头解析数据,所以我有一个对象数组,而不仅仅是一个数组(但我可以改变它对我的用例来说不是必需的)。

因此,从中我得到了“只是散列它”。我的实现看起来有点不同(可能会慢一些,因为我不太理解那个)。但是在解析之后,我散列了查找“键”(在我的例子列[0]),因为我知道我的SKU是唯一的,我的代码可以这么简单(我实际上有一个标题行)

skudata = baby.parse(data,{header:false});
for (i=1;i<skudata.data.length;i++){
    skuhash[skudata.data[i][0]] = i;
}
if (skuhash.hasOwnProperty(sku)) {
    skuloc = skuhash[sku];
    if (skudata.data[skuloc][col] == key) { return true;}
}