我必须在这里缺少一些东西,但下面的代码(
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);