2 回答

TA貢獻(xiàn)1836條經(jīng)驗 獲得超3個贊
您應(yīng)該使用 JSON 結(jié)構(gòu)而不是手動解析字符串。
我還將使用 DeifferModel 作為 aclass而不是 an interface,因此您可以更輕松地初始化項目:
// in a xxx.model.ts file
export class DeifferModel {
constructor(public field, public newValue, public oldValue) {}
}
// in your component
setOldNewValue(item: DeiffrentModel): void {
if (item.newValues) {
newValue = JSON.parse(item.newValues);
}
if (item.oldValues) {
oldValue = JSON.parse(item.oldValues);
}
Object.keys(newValue).foreach(key => {
const addModel = new DeifferModel('id', newValue[key], oldValue[key]);
this.differModel.push(addModel);
});
this.findDiffrent = _.difference(newValue, oldValue); // no use of "this.differModel" ?
}

TA貢獻(xiàn)1841條經(jīng)驗 獲得超3個贊
不是將它們存儲為數(shù)組,而是將值解析為對象
if (item.newValues !== null) {
newValue = item.newValues.split(',');
}
if (item.oldValues !== null) {
oldValue = item.oldValues.split(',');
}
到
oldValue = JSON.parse(oldValues);
newValue = JSON.parse(newValues);
您可以像這樣找到以毫秒為單位的差異:
CoinLastUpdateDiff = Math.abs(new Date(newValue.CoinLastUpdate) - new Date(oldValue.CoinLastUpdate));
添加回答
舉報