Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/418.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript中解析Json数组_Javascript_Json - Fatal编程技术网

如何在Javascript中解析Json数组

如何在Javascript中解析Json数组,javascript,json,Javascript,Json,我想解析下面给出的json数组。这是我在检查时得到的json 0:“Harpic Power Plus原装液体马桶清洁剂” 1:“HARPIC Powerplus消毒马桶清洁剂,原装-1L液体马桶清洁剂” 但是当我使用json.parse()时,我会遇到这个错误 ERROR Error: Uncaught (in promise): SyntaxError: Unexpected token o in JSON at position 1 SyntaxError: Unexpected toke

我想解析下面给出的json数组。这是我在检查时得到的json

0:“Harpic Power Plus原装液体马桶清洁剂”
1:“HARPIC Powerplus消毒马桶清洁剂,原装-1L液体马桶清洁剂”

但是当我使用json.parse()时,我会遇到这个错误

ERROR Error: Uncaught (in promise): SyntaxError: Unexpected token o in JSON at position 1
SyntaxError: Unexpected token o in JSON at position 1
at JSON.parse (<anonymous>)
at app.component.ts:42
at ZoneDelegate.invoke (zone-evergreen.js:364)
at Object.onInvoke (core.js:41938)
at ZoneDelegate.invoke (zone-evergreen.js:363)
at Zone.run (zone-evergreen.js:123)
at zone-evergreen.js:857
at ZoneDelegate.invokeTask (zone-evergreen.js:399)
at Object.onInvokeTask (core.js:41916)
at ZoneDelegate.invokeTask (zone-evergreen.js:398)
at resolvePromise (zone-evergreen.js:798)
at zone-evergreen.js:864
at ZoneDelegate.invokeTask (zone-evergreen.js:399)
at Object.onInvokeTask (core.js:41916)
at ZoneDelegate.invokeTask (zone-evergreen.js:398)
at Zone.runTask (zone-evergreen.js:167)
at drainMicroTaskQueue (zone-evergreen.js:569)
at ZoneTask.invokeTask [as invoke] (zone-evergreen.js:484)
at invokeTask (zone-evergreen.js:1621)
at XMLHttpRequest.globalZoneAwareCallback (zone-evergreen.js:1658)
ERROR错误:Uncaught(在promise中):SyntaxError:JSON中位置1处的意外标记o
SyntaxError:JSON中位置1处的意外标记o
在JSON.parse()处
在app.component.ts:42处
在ZoneDelegate.invoke(zone evergreen.js:364)
在Object.onInvoke(core.js:41938)
在ZoneDelegate.invoke(zone evergreen.js:363)
在Zone.run(Zone evergreen.js:123)
常青区。js:857
在ZoneDelegate.invokeTask(zone evergreen.js:399)
位于Object.onInvokeTask(core.js:41916)
在ZoneDelegate.invokeTask(zone evergreen.js:398)
at resolvePromise(zone evergreen.js:798)
常青区。js:864
在ZoneDelegate.invokeTask(zone evergreen.js:399)
位于Object.onInvokeTask(core.js:41916)
在ZoneDelegate.invokeTask(zone evergreen.js:398)
在Zone.runTask(Zone everyver.js:167)
在drainMicroTaskQueue(zone evergreen.js:569)
在ZoneTask.invokeTask[as invoke](zone everyver.js:484)
在invokeTask(zone evergreen.js:1621)
位于XMLHttpRequest.globalZoneAwareCallback(zone evergreen.js:1658)

样本的json格式如下:

var myJson={
第一:“哈比能量加上原装液体马桶清洁剂”,
第二:“HARPIC Powerplus消毒马桶清洁剂,原装-1L液体马桶清洁剂”
};

log(JSON.stringify(myJson))请稍等,因此最初您已经完成了
JSON.parse(“{”产品名称“:[“Harpic Power Plus原装马桶清洁液”,“Harpic Powerplus消毒马桶清洁液,原装-1L马桶清洁液”])并得到一个数组?这是一个JS数组,不是JSON数组。您可以使用数组键访问其值,例如,
const foo=JSON.parse(“{”product_name“:[“Harpic Power Plus原装马桶清洁液”,“Harpic Powerplus消毒马桶清洁液,原装-1L马桶清洁液”]);console.log(foo.product_name[0]);console.log(foo.product_name[1])希望这能起作用

它不是JSON格式的
console.log(yourJsonArray)的输出是什么
?你的帖子中的JSON看起来不像JSON。有时您可以使用
JSON.parse(JSON.stringify(almostJson))
解析类似于JSON的数据。但在《邮递员》中,它向我展示了{“产品名称”:[“Harpic Power Plus Original液体马桶清洁剂”,“Harpic Powerplus消毒马桶清洁剂,Original-1L液体马桶清洁剂”]},这是jsonOk,看起来更像JSON。不过,它可能包含奇怪的空格字符等。在解析JSON之前,您是否尝试过将JSON字符串化?请稍候,因此最初您已经完成了
JSON.parse(“{”product_name:“[“Harpic Power Plus Original Liquid Toiler Cleaner”,“Harpic Powerplus Different Toiler Cleaner,Original-1L Liquid Toiler Cleaner”])并得到一个数组?这是一个JS数组,不是JSON数组。您可以使用数组键访问其值,例如,
const foo=JSON.parse(“{”product_name“:[“Harpic Power Plus原装马桶清洁液”,“Harpic Powerplus消毒马桶清洁液,原装-1L马桶清洁液”]);console.log(foo.product_name[0]);console.log(foo.product_name[1])如果我json.stringify该{“product_name”:[“Harpic Power Plus原装马桶清洁液”,“Harpic Powerplus消毒马桶清洁液,原装-1L马桶清洁液”,我会得到这个结果,但我想得到数组中的项目