简体   繁体   English

解析数组时的Json Javascript字符串语法错误

[英]Json Javascript String Syntax error when parsing an array

I have the following code javascript code 我有以下代码javascript代码

var tasksPlayed = [];
tasksPlayed[90] = true;

var json = JSON.stringify(tasksPlayed);

var output = JSON.parse(json);

this gives an error 这给出了一个错误

SyntaxError: JSON.parse

Im not sure why, if I do a .toSource() on the objects I get 我不确定为什么,如果对得到的对象执行.toSource()

keyValue:"[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,true]"})

Any ideas where I might be going wrong 我可能会出错的任何想法

I don't get this error when I run the code, but the thing with the null values is that tasksPlayed is an array, so when you set tasksPlayed[90] = true; 我在运行代码时没有收到此错误,但是具有null值的事情是tasksPlayed是一个数组,因此当您设置tasksPlayed[90] = true; , then it automatically fills all positions from 0 to 89 with null . ,那么它将自动使用null填充从089所有位置。 Try using a plain object instead of an array: 尝试使用普通对象而不是数组:

var tasksPlayed = {};
tasksPlayed[90] = true;

var json = JSON.stringify(tasksPlayed);

var output = JSON.parse(json);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM