2017-06-29 4 views
0

私はjsファイル内のオブジェクトの配列を持っている:配列内の次のx個の項目を返す方法は?

[{name:'John',number:1},{name:'Peter',number:2},{name:'Mario',number:3},{name:'Jack',number:4}] 

は、ページネーションのコンポーネントを作成しようとし、オブジェクトの次のカップルを選択する方法を疑問に思います。スライスしようとしましたが、動作させることができませんでした。したがって、たとえば:

SelectPage(1) would return nr 3 and 4, SelectPage(0) nr 1 and 2 etc 

これにはロダッシュ機能がありますか?

+0

コードJSで試したコードを投稿しますか? – Etherealm

+0

配列インデックスに基づいて、またはオブジェクトの 'number'属性に基づいて、X項目を一度に選択しますか?配列インデックス '.slice()'を使うと簡単にそれを行うことができます。ライブラリは必要ありません。 – nnnnnn

答えて

2

これに沿った何か?改善と更新

var list = [{name:'John',number:1},{name:'Peter',number:2},{name:'Mario',number:3},{name:'Jack',number:4},{name:'Mario',number:5},{name:'Jack',number:6}] 

function SelectPage(list, index, pageSize) { 
    return list.slice(index*pageSize, index*pageSize+pageSize) 
} 

+0

'2'を' pageSize'という変数に入れてください。これは私が投稿するつもりです。 – nnnnnn

0

@nnnnnnおかげでここでは、実行中の取得するサンプルコードです、あなたはあなたの要件ごとにそれを変更することができます。

// Your dummy data 

var data = [ 
    {name:'John',number:1}, 
    {name:'Peter',number:2}, 
    {name:'Mario',number:3}, 
    {name:'Jack',number:4} 
]; 

// function for pagination 

    function page(index,data){ 
    var count = 2; 
    var pageNo = index; 
    if(index == 0){ 
    pageNo = 1; 
    } 
    var currentCount = count * pageNo; 

    return (data.slice(index,currentCount)); 
} 

// call this function and pass page index and the data 

page(0,data); // 1st page and data array 
関連する問題