Javascript 意外标记:在window.onload

Javascript 意外标记:在window.onload,javascript,api,eval,Javascript,Api,Eval,我是Javascript的初学者,我对eval()函数有点问题。首先,我通过API获取一些数据: const xhr = new XMLHttpRequest(); xhr.open('GET', url, false); xhr.send(null); 因此,在这一点上,我知道xhr.response例如: "{"data":[{"id":41462,"created_at":"2017-11-13 [...]}" 现在,我想用它制作一本字典,所以我做到了: var req = eval(

我是Javascript的初学者,我对eval()函数有点问题。首先,我通过API获取一些数据:

const xhr = new XMLHttpRequest();
xhr.open('GET', url, false);
xhr.send(null);
因此,在这一点上,我知道xhr.response例如:

"{"data":[{"id":41462,"created_at":"2017-11-13 [...]}"
现在,我想用它制作一本字典,所以我做到了:

var req = eval(xhr.response);

但是控制台在eval()步骤中显示“uncaughtsyntaxerror:Unexpected token:at window.onload”。我真的不知道为什么。。。有什么提示吗?

eval
希望传递一大块JavaScript。对象的JSON表示(本身)不是有效的JavaScript


要解析JSON,请使用
JSON.parse
而不是
eval

使用
JSON.parse()
而不是看起来像JSON的
eval()
而不是执行eval-do-JSON.parse(xhr.response)它会让我认为您的JSON无效。任何有效的JSON肯定也会被解析为有效的JSON吗?不是想逆势而行,但是你有一个有效的JSON但不是有效的JS的例子吗?@evolutionxbox并不总是这样@很高兴认识艾米。3.0 0α-Aα-0 0 0 0 0 0 0α-Aα--A Aα-Aα-0 0 0 0 0 0 0 0α-Aα-Aα-Aα-0 0 0 0 0 0 0 0 0 0 0 0 0 0αα-Aαα-t t,tα-tα-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,tαα-t,tα-0 0 0 0 0 0 0,t,tα-0 0 0 0 0 0 0 0 0 0 0 0 0 0,t,tαα-0 0 0 0 0 0 0,t,tαααα-0 0 0 0 0 0 0 0 0 0 0 0 0 0,t,tααα---0 0 0 0 0,t,t,tαααααα-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,0 0 0 0 0 0 0 0 0 0 0,0 0 0,0 0̶s̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶̶。。。是的,非常感谢!我不知道JSON,你很有帮助:)@Quentin-ooo。有趣的