2017-11-05 8 views
-2

データのサンプル配列があります。Angularjsのデータ配列が範囲にソート

例:

var arr = ["test1#1,2,3,4,5,7,8,10,11,12,15,true,false", 
      "test2#1,2,3,5,7,9,10,11,12,15,true,false", 
      "test3#1,3,4,5,7,8,10,11,12,15,true,false"]. 

データ数列一致の配列は、二つ以上の数字のような範囲とした場合。上記のデータ配列を以下のように表示したい。

 result = [ 
      {"test1","1-5,7,8,10-12,15",true,false}, 
      {"test2","1-3,5,7,9-12,15",true,false}, 
      {"test3","1,3-5,7,8,10-12,15",true,false} 
     ]. 

どのようにしてこの結果を得ることができますか?これを並べ替えることを親切にしてください。

+0

それは宿題のように、あなたの試みを示してください、ポスト関連するコードは、キーと値のペアを持つべきであるオブジェクトの配列を作るために –

+1

をスニペット、あなたのターゲット配列は、あなたができる有効なオブジェクトではありませんに見えます'{" test3 "、" 1,3-5,7,8,10-12,15 "、true、false}のようなオブジェクトを定義していません。 –

答えて

0

anglejsを実行する必要はありません。

JavaScriptを使用してのみ行うことができます。

var arr = ["test1#1,2,3,4,5,7,8,10,11,12,15,true,false", 
 
      "test2#1,2,3,5,7,9,10,11,12,15,true,false", 
 
      "test3#1,3,4,5,7,8,10,11,12,15,true,false"]; 
 

 
var result = []; 
 
for(var i = 0; i < arr.length; i++){ 
 
    
 
    var test = arr[i].split("#"); 
 
    console.log(test[0]); 
 
    var key = test[0]; 
 
    var value = test[1]; 
 
    result.push({key:value}); 
 

 
} 
 

 
console.log(result);