检查JavaScript对象是否已更改的设计模式

我从服务器获取对象列表

[{name:'test01', age:10},{name:'test02', age:20},{name:'test03', age:30}]

我将它们加载到html控件中,以供用户编辑。然后是一个按钮,用于将整个列表批量保存回数据库。

除了发送整个列表,我只想发送已更改对象的子集。

它可以是数组中任意数量的项目。我想做一些类似于Angular的框架,在未做任何更改的情况下将对象属性标记为“原始”。然后使用该标志仅将非“原始”的项目(已修改的项目)发布到服务器。

nshoo

这是下面的函数,当提供旧的对象数组和新的对象数组时,该函数将返回更改的对象数组:

getChanges = function(oldArray, newArray) {
  var changes, i, item, j, len;
  if (JSON.stringify(oldArray) === JSON.stringify(newArray)) {
    return false;
  }
  changes = [];
  for (i = j = 0, len = newArray.length; j < len; i = ++j) {
    item = newArray[i];
    if (JSON.stringify(item) !== JSON.stringify(oldArray[i])) {
      changes.push(item);
    }
  }
  return changes;
};

例如:

var older = [{name:'test01', age:10},{name:'test02', age:20},{name:'test03', age:30}]
var newer = [{name:'test01', age:10},{name:'test02', age:20},{name:'test03', age:20}]
getChanges(older, newer)

(请注意,test03的年龄现在是20)

[{name:'test03', age:20}]

您只需要导出客户端完整的已编辑值列表,将其与旧列表进行比较,然后将更改列表发送到服务器即可。

希望这可以帮助!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

检查JavaScript对象是否已更改的设计模式

来自分类Dev

检查对象是否已更改

来自分类Dev

检查领域对象是否已删除

来自分类Dev

检查Python中的两个对象是否已更改?

来自分类Dev

Monitor.TryEnter检查对象是否已锁定?

来自分类Dev

检查给定的ostream对象是否已写入

来自分类Dev

检查对象是否已全部涂漆

来自分类Dev

Monitor.TryEnter检查对象是否已锁定?

来自分类Dev

有没有一种方法可以检查提交后Java对象是否已更改

来自分类Dev

是否有设计模式或语言功能(c#)来有效确定一组对象是否已执行动作

来自分类Dev

检查领域对象是否有任何更改

来自分类Dev

检查对象是否在对象数组中-javascript

来自分类Dev

如何检查对象是否是 JavaScript 中的常规对象

来自分类Dev

方法对象是否等效于命令设计模式中的命令对象?

来自分类Dev

Javascript:检查对象是否具有属性

来自分类Dev

如何检查文字对象是否在Javascript数组中

来自分类Dev

Javascript检查Id对象是否在数组中

来自分类Dev

Javascript:检查对象是否具有属性

来自分类Dev

JavaScript检查对象是否具有继承的属性

来自分类Dev

JavaScript检查数组对象是否存在或未定义

来自分类Dev

javascript如何检查包含数组的对象是否为空

来自分类Dev

如何检查文字对象是否在Javascript数组中

来自分类Dev

检查javascript对象是否包含某些Give键

来自分类Dev

Python:创建新对象之前检查对象是否已存在

来自分类Dev

Flask sqlalchemy检查db.session中的对象是否已准备好提交

来自分类Dev

在检查对象是否已存在时将列表添加到组合框

来自分类Dev

检查项目符号对象是否已离开屏幕并从数组中删除

来自分类Dev

MEAN / AngularJS应用程序检查对象是否已发布

来自分类Dev

如何检查对象是否已准备好在模板 Angular 中使用?

Related 相关文章

  1. 1

    检查JavaScript对象是否已更改的设计模式

  2. 2

    检查对象是否已更改

  3. 3

    检查领域对象是否已删除

  4. 4

    检查Python中的两个对象是否已更改?

  5. 5

    Monitor.TryEnter检查对象是否已锁定?

  6. 6

    检查给定的ostream对象是否已写入

  7. 7

    检查对象是否已全部涂漆

  8. 8

    Monitor.TryEnter检查对象是否已锁定?

  9. 9

    有没有一种方法可以检查提交后Java对象是否已更改

  10. 10

    是否有设计模式或语言功能(c#)来有效确定一组对象是否已执行动作

  11. 11

    检查领域对象是否有任何更改

  12. 12

    检查对象是否在对象数组中-javascript

  13. 13

    如何检查对象是否是 JavaScript 中的常规对象

  14. 14

    方法对象是否等效于命令设计模式中的命令对象?

  15. 15

    Javascript:检查对象是否具有属性

  16. 16

    如何检查文字对象是否在Javascript数组中

  17. 17

    Javascript检查Id对象是否在数组中

  18. 18

    Javascript:检查对象是否具有属性

  19. 19

    JavaScript检查对象是否具有继承的属性

  20. 20

    JavaScript检查数组对象是否存在或未定义

  21. 21

    javascript如何检查包含数组的对象是否为空

  22. 22

    如何检查文字对象是否在Javascript数组中

  23. 23

    检查javascript对象是否包含某些Give键

  24. 24

    Python:创建新对象之前检查对象是否已存在

  25. 25

    Flask sqlalchemy检查db.session中的对象是否已准备好提交

  26. 26

    在检查对象是否已存在时将列表添加到组合框

  27. 27

    检查项目符号对象是否已离开屏幕并从数组中删除

  28. 28

    MEAN / AngularJS应用程序检查对象是否已发布

  29. 29

    如何检查对象是否已准备好在模板 Angular 中使用?

热门标签

归档