0

現在、次の形式で JSON 応答を返す AJAX 駆動のサイトがあります[{"n":"bob"}, {"n":"jim"}, ..., {"n":"alex"}]。基本的には json オブジェクトの配列です。

ただし、次のように構造化することを考えています[["bob"], ["jim"], ..., ["alex"]]。基本的に配列の配列。

明らかな違いは、プロパティを介してデータにアクセスする代わりに、想定されたインデックス位置 (つまり、配列 [0] == 名前) を介してデータにアクセスすることですが、それ以外に、それぞれの長所/短所が何であるかに興味があります。 . 興味深い要因: クライアントでのパフォーマンス (データ構造の構築とその値の取得の両方)、帯域幅 (明らかに、大規模なデータ セットの場合、またはモバイル デバイスなどの低速のインターネット接続の場合)、設計パターン/ベスト プラクティス、他の人がどのように応答を設計したか、等...

4

2 に答える 2

1
  • object-in-array 形式を使用すると、n.

    [{
            'name' : 'John',
            //more data about john
    },{
            'name' : 'Joe',
            //more data about joe
    }]
    //myArray[0].name = John
    
  • 配列を使用する場合、返されるデータは同じ種類であると見なされます。

    ['John','Joe'...] //all names
    //myArray[0] = John
    

しかし、それはすべて、データをどのように解析するかにかかっています。


次のようにデータを構造化します。

[["bob"], ["jim"], ..., ["alex"]]

は完全に間違っています。名前の配列に名前を入れるのはなぜですか? セカンドレベルは何のため?

于 2012-04-12T05:16:48.587 に答える
0

配列アプローチでは意味のあるインデックス名を使用できないため、JSON オブジェクトを使用します。また、ほとんどのプログラミング言語には、JSON 出力を作成するための優れたライブラリがあることがわかります。

非常に大規模なデータ セットを扱っている場合を除き、配列アプローチによってパフォーマンスが大幅に向上するとは思えません。

于 2012-04-12T05:15:16.790 に答える