安全地将JSON字符串转换为对象

问题描述:

给定一串JSON数据,你如何安全地将该字符串转换为JavaScript对象?

Given a string of JSON data, how can you safely turn that string into a JavaScript object?

显然你可以用类似......之类的东西做不安全的事情/ p>

Obviously you can do this unsafely with something like...

var obj = eval("(" + json + ')');

...但这让我们容易受到包含其他代码的json字符串的影响,这似乎非常危险简单评估。

...but that leaves us vulnerable to the json string containing other code, which it seems very dangerous to simply eval.

JSON.parse(jsonString) 是一种纯JavaScript方法,只要你能保证一个相当现代的浏览器。

JSON.parse(jsonString) is a pure JavaScript approach so long as you can guarantee a reasonably modern browser.