0

「メッセージ」オブジェクトのリストを含む 2 つの配列があります。各メッセージ オブジェクトには、プロパティ「receivedTime」があります。

最新のメッセージが最初になるように、2 つの配列を「receivedTime」で並べ替えることができます。

今、underscorejsを使用しています(該当する場合)... 2つの配列の違いを解消する方法はありますか? 新しい配列には、元のリストよりも新しいメッセージが含まれます。

元の配列にない新しいメッセージのみが必要です。

コンテキストによっては、API からのみすべてのメッセージを取得できます。そのため、タイマーでそれを続け、ページのテーブルに新しいメッセージを追加する必要があります (この部分は実行できます。必要なのは、呼び出しごとのリストの違いだけです)。

4

4 に答える 4

0

両方の配列を並べ替えた後、それらを for ループに渡し、値が 2 番目の配列にあるかどうかを確認します。

for(var i = 0; i < newMessages.length; i++) {
    if(Messages[i] == newMessages[i]) {
         newMessages.splice(i, 1);
    }
}

それ以外の場合は、メッセージの長さを見つけて、newMessages 配列に存在するその数の要素を削除します。

于 2013-09-05T06:01:09.663 に答える