有兩個陣列的回應如下:
Array1 = [{...},{...},{...} ...]; // array2 has exact same records as in array1
Array2 = [{BookingId: 1, Duration: 30, BookingDate: 12/09/2021 12:10},{BookingId: 2, Duration: 45, BookingDate: 12/09/2021 13:45}, ...];
現在在這些陣列上應用 jquery 合并,例如:
var result = $.merge(Array1, Array2);
因此,兩個陣列都具有相同的資料,但在輸出中顯示重復的結果。
uj5u.com熱心網友回復:
如果您需要根據BookingId財產進行重復資料洗掉,您可以利用Map:
const arr1 = [{BookingId: 1, Duration: 30, BookingDate: '12/09/2021 12:10'},{BookingId: 2, Duration: 45, BookingDate: '12/09/2021 13:45'}],
arr2 = [{BookingId: 2, Duration: 45, BookingDate: '12/09/2021 13:45'}],
merged = [
...[...arr1, ...arr2]
.reduce((acc, record) =>
(acc.set(record.BookingId, record), acc), new Map)
.values()
]
console.log(merged)
.as-console-wrapper{min-height:100%}
uj5u.com熱心網友回復:
我感謝你們所有人的努力。
var oldIds = new Set(this.bookings.map(b => b.BookingId));
var merged = [...response.filter(b => !oldIds.has(b.BookingId)), ...this.bookings];
this.bookings = merged;
解決了!
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/320870.html
標籤:javascript C# 查询 推特引导 Vue.js
