在 Javascript 对象中从 CSV 检索解析的数据(使用 Papa Parse)

Posted

技术标签:

【中文标题】在 Javascript 对象中从 CSV 检索解析的数据(使用 Papa Parse)【英文标题】:Retrieve parsed data from CSV in Javascript object (using Papa Parse) 【发布时间】:2014-12-03 16:15:49 【问题描述】:

我有点不好意思问这个问题,因为它看起来应该很明显,但我在处理异步问题方面相当薄弱,我对如何继续感到困惑。

我正在使用 Papa Parse (http://papaparse.com/docs.html#remote-files) 来解析远程 CSV。我想将解析的结果存储在一个对象中以供以后使用。这是我的代码:

var dataset = ;    

    Papa.parse("http://path/to/some.csv", 
      download: true,
      dynamicTyping: true,
      complete: function(results) 
        dataset = results.data;
      
    );

console.log(dataset);  

当然,这会导致一个空对象被记录到控制台。任何使用数据集的尝试都不起作用,因为当然,在代码执行时数据集对象实际上还没有收到它的数据。有人可以帮我重构或解释我如何处理这个问题吗?

【问题讨论】:

【参考方案1】:

是否有理由需要在函数之外使用数据集变量?确保填充数据集的最简单方法是在填充后立即在“完整”函数中操作数据集。

另一种方法是像这样添加回调:

function doStuff(data) 
    //Data is usable here
    console.log(data);


function parseData(url, callBack) 
    Papa.parse(url, 
        download: true,
        dynamicTyping: true,
        complete: function(results) 
            callBack(results.data);
        
    );


parseData("tests/sample.csv", doStuff);

【讨论】:

这正是我需要的重新定位。我还在学习回调和异步,所以这真的帮助我揭开了它的神秘面纱。谢谢!!!! 是的!像在回调中添加魅力一样工作!谢谢! 出于某种原因,我似乎无法让它工作。有人可以帮助我***.com/questions/51013182/… @colonelsanders 我无法理解这个问题,然后我找到了你的答案。它解决了一切!非常感谢!

以上是关于在 Javascript 对象中从 CSV 检索解析的数据(使用 Papa Parse)的主要内容,如果未能解决你的问题,请参考以下文章

在 C# 中从 Web 检索匿名类型

在 Swift 中从 Firebase 检索数据的问题

在两个不同的构建中从一个数组中检索项目会返回不一致的结果

如何在 AWS Glue 中从 CSV 创建结构化 JSON

在javascript中从纪元日期转换[重复]

在 Javascript 中从 Django 读取对象