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

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

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

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

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

  1. var test = {}; // Object
  2. test['a'] = 'test';
  3. test['b'] = []; // Array
  4. test['b'].push('item');
  5. test['b'].push('item2');
  6. test['b'].push('item3');
  7. var json = JSON.stringify(test);
  8. alert(json);

猜你在找的Json相关文章