繁体   English   中英

如何将原型属性添加到现有对象

[英]How to add prototype property to existing object

我数组中的对象很少,我想从工厂向类型为-date的对象添加一些道具。

我不需要从该对象中删除旧值。 我尝试以这种方式做到这一点:

  angular.forEach($scope.things, function(item) {
    if(item.type === 'date') {
      item = DateFactory.prototype.createFactory();
    }
  })

但这不起作用,我哪里错了? 柱塞示例

forEach中更改item不会使该项目变异。 您需要改用obj[key]

angular.forEach($scope.things, function(item, key, obj) {
    if(item.type === 'date') {
      obj[key] = DateFactory.prototype.createFactory();
    }
  })

更新的插头

另外,您应该从工厂返回日期对象的实例:

return new date();

..然后调用方法:

obj[key] = DateFactory.createFactory()

要链接原型,请使用以下语法:

item = Object.create(Date);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM