回答
那麼,如果你想看到添加的項目,你需要找到現有項目和第二個數組中不存在的差異。
讓我們打電話給第一個陣列 - A
和第二個 - B
。
所以現在刪除的項目將是difference(A, B)
並插入項目將是difference(B, A)
如果您使用underscore.js你可以簡單地做這樣的:
var removed = _(A).difference(B); var added = _(B).difference(A);
例如,你有這麼A = [1,2,3,4]; B = [3,4,5,6];
那麼removed
將包含[1, 2]
和added
將包含[5, 6]
編輯 當然你也可以編寫自己的difference()
但使用underscore.js或lodash已經證明了他們的可用性在我的實踐。當然,如果你想引用的詳細信息,然後看看
並申請而過濾你的邏輯,你可以隨時使用filter()
或reduce()
與過濾器功能結合使用的差分邏輯工作。 函數差(arrayA,arrayB){ \t變種的diff = arrayA.filter(函數(項目,i)的{ \t \t返回arrayB.indexOf(項目)=== -1; \t \t }); \t return diff; } var A = [1,3,4,5],B = [1,2,4,6]; var a_minus_b =差異(A,B); var b_minus_a =差異(B,A); console.log(a_minus_b); //已刪除3,5 console.log(b_minus_a); //增加2,6 –
另外ExtJS提供了Ext.Array.difference(array1,array2)方法。 –
OrignalArray = OrignalArray.filter(function(val) {
return ModifiedArray.indexOf(val) == -1;
});
。
- 1. 最好的方法來刪除js數組中的html元素?
- 2. 什麼是最好的方式來刪除元素(S)我插入後()
- 3. t-sql:什麼是最好的方法來比較小數
- 4. 比較2陣列和刪除元素
- 5. 什麼是從數組中添加/刪除元素的最佳方式?
- 6. 什麼是最好的方式來刪除像「?」的網址中的參數?
- 7. 從數組中刪除第一個元素的最佳方法是什麼?
- 8. 什麼是最好的方式來並排浮動同一個類的元素?
- 9. 如何比較數組的最後2個元素?
- 10. 最好的方法來比較列表元素
- 11. 最好的方法來比較Java中的2個XML文檔
- 12. 最好的方法來比較2個相似的字符串?
- 13. 爲什麼`--array.length`刪除數組的最後一個元素?
- 14. 什麼是最快的方式來查找和刪除文件?
- 15. 最有效的方法來刪除嵌套的數組元素
- 16. 什麼是更好的方式來刪除文件的條件
- 17. 比較串來串元素的數組
- 18. 獲取Perl數組的最後N個元素的最佳方式是什麼?
- 19. 如何以最好的方式從Perl中的數組中刪除元素
- 20. 什麼是使用引用刪除數組元素的最佳方法
- 21. 從另一個數組中刪除一個數組的所有元素的最有效方法是什麼?
- 22. 最好的方法來創建一個字典爲以後比較的元素
- 23. 比較數組的元素
- 24. 比較兩個numpy數組是否相等,元素方式
- 25. 什麼是最好的方式遍歷一個數組列表
- 26. 刪除數組中的最後2個元素 - Ruby
- 27. 什麼是從IE中刪除DOM元素的最快方法?
- 28. 什麼是刪除佈局元素的最佳方法
- 29. 字符串比較和刪除元素
- 30. 什麼是最好的方式來重新連接後Netty中
在另一個數組上使用帶'.indexOf'謂詞的'.filter'。 –
你有什麼試過的,你能舉個例子嗎?你的解決方案有問題嗎? – Xotic750