1

我正在使用内置功能在 Flash 应用程序中创建 JSON 字符串。

这里是我的源代码示例

objStr = JSON.stringify( 
        {
            version:"1.0",
            skin:"white",
            palette:{dataColor:"#0397d6",negativeDataColor:"#d40000",toolbarColor:"#056393"}
        });

我有个问题。每次我启动我的应用程序(不执行 createJSON 函数)时,结果我在 JSON 字符串中都有不同的成员顺序。例如:

{"version":"1.0","palette":{"negativeDataColor":"#d40000","dataColor":"#0397d6","toolbarColor":"#056393"},"skin":"white"}

或者

{"palette":{"negativeDataColor":"#d40000","toolbarColor":"#056393","dataColor":"#0397d6"},"version":"1.0","skin":"white"}

我该如何解决。

4

1 回答 1

0

JSON 对象是无序的,请参阅JSON.org

JSON 建立在两种结构之上:

  1. 名称/值对的集合。在各种语言中,这被实现为对象、记录、结构、字典、哈希表、键控列表或关联数组。对象是一组无序的名称/值对
  2. 值的有序列表。在大多数语言中,这被实现为数组、向量、列表或序列。数组是值的有序集合。

顺序真的无关紧要,因为您应该通过键检索值而不是迭代它们。

于 2012-11-14T10:39:26.943 回答