JSON.stringify不能使用普通的Javascript数组

前端之家收集整理的这篇文章主要介绍了JSON.stringify不能使用普通的Javascript数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我必须在这里缺少一些东西,但下面的代码( Fiddle)返回一个空字符串:
var test = new Array();
test['a'] = 'test';
test['b'] = 'test b';
var json = JSON.stringify(test);
alert(json);

JSON的这个数组的正确方法是什么?

正常JavaScript数组设计为使用数字索引保存数据。你可以把命名键放在它们上面(当你想存储有关保存正常,有序,数字索引数据的数组的元数据时,这是有用的),但这不是他们的设计。 JSON数组数据类型不能具有数组上的命名键。

如果你想要命名键,使用一个对象,而不是一个数组。

var test = {};           // Object
test['a'] = 'test';
test['b'] = [];          // Array
test['b'].push('item');
test['b'].push('item2');
test['b'].push('item3');
var json = JSON.stringify(test);
alert(json);

猜你在找的Json相关文章