gpt4 book ai didi

javascript - d3.json console.log 返回未定义或 JSON.parse 在第 1 行返回意外字符

转载 作者:行者123 更新时间:2023-12-03 12:03:53 25 4
gpt4 key购买 nike

我花了很多时间试图解决此语句中的错误,以在 console.log 中显示 json url 的内容:

d3.json( urlpathtojson, function(error, jsondata ) {
var jsonfile = JSON.parse(jsondata);
console.log(jsonfile);
}):

我可以看到 GET 语句和 JSON 请求的内容,但控制台给出以下错误:

SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data

或者在其他情况下不解析:

ReferenceError: jsondata is not defined

或者

jsondata is undefined

以下是我在 Stackoverflow 上找到的答案。希望它也能对其他人有所帮助。

最佳答案

问题是控制台日志语句运行时没有等待 json 文件的返回,从而导致上述错误。

通过 Stackoverflow,我从这个问题中找到了这个解决方案: Returning array from d3.json()

function doSomethingWithData(jsondata) {
console.log(jsondata);
}

d3.json(dataPath, doSomethingWithData);

注意 doSomethingWithData 是如何直接传递给 d3.json 的,而不是在匿名内部函数中单独调用它。

注意:这不是 d3.js 的特定问题。基本上,所有异步 javascript 函数都可能以类似的方式运行。如果它们返回某些内容,则它不会是传递的回调的返回值。

关于javascript - d3.json console.log 返回未定义或 JSON.parse 在第 1 行返回意外字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25272479/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com