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 は、次の 2 つの構造で構築されています。

  1. 名前と値のペアのコレクション。さまざまな言語で、これはオブジェクト、レコード、構造体、辞書、ハッシュ テーブル、キー付きリスト、または連想配列として実現されます。オブジェクトは、名前と値のペアの順序付けられていないセットです
  2. 値の順序付きリスト。ほとんどの言語では、これは配列、ベクトル、リスト、またはシーケンスとして実現されます。配列は、順序付けられた値のコレクションです。

値を反復するのではなく、キーで値を取得する必要があるため、順序は実際には問題ではありません。

于 2012-11-14T10:39:26.943 に答える