【发布时间】:2016-08-19 18:02:56
【问题描述】:
我目前正在处理一个必须解析大量数据的 Javascript 项目。该项目要求我解析一些 JSON 数据并将特定数据带入另一个数组。现在,我正在使用 JSON.stringify 方法,并且可以控制台记录我需要的所有数据。数据看起来像这样:
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [
[
[
-85.3865810000125,
33.90171899971196
],
[
-85.38659500025622,
33.9017919996593
],
是的,这不是全部数据——它大约有 1200 页长!我只粘贴在它的顶部。我真正需要的是如何到达它的坐标方面并进入一个数组。所以我目前正在做的是这样的:
var work = JSON.stringify(response, null, 4)
console.log(work);
这给了我上述回应。但是,我对 JSON.stringify 不太熟悉,所以如果我这样做:
console.log(work.type);
试图查看类型的值是什么,我得到未定义的响应。现在,如果我尝试这样做:
var work = JSON.parse(response)
console.log(work);
我收到以下响应:VM296:1 Uncaught SyntaxError: Unexpected token o in JSON at position 1
因此,我无法得到解析的数据,而我想要得到的数据将是坐标数据。使用 stringify 的任何帮助都会对我有很大帮助。我已经阅读了很多关于它如何将数据转换为字符串的内容,但并没有真正了解如何解析它。我必须使用解析吗?感谢您的帮助!
【问题讨论】:
-
这不是一个有效的 json
-
您没有完成 JSON,正如@NiharSarkar 所说,它也是无效的。
-
只需执行
response.type即可获得type属性。无需字符串化,它已经是一个 javascript 对象了。 -
JSON 没有完成,因为它有 1200 页长!所以我不想把它贴在这里——很抱歉造成混乱!
-
console.log(response) 得到什么?它是一个对象吗?它是有效的json吗?是小狗吗?
标签: javascript json parsing stringify