[英]Cannot define property '_getObservable': object is not extensible
我面临一个问题,我不确定为什么。 我将StorageFile设置为javascript对象的属性:
var myFile = MethodThatReturnsAFile();
var obj = { file: myFile };
问题出在我需要“克隆”该对象时。 基于很多关于此问题的答案,我开始使用此方法克隆对象:
for (var pty in obj)
if (obj.hasOwnProperty(pty) && target[pty] !== obj[pty])
target[pty] = obj[pty];
其中obj
是我当前的对象,而target
是我要创建的对象,在我的情况下是var target = {}
。
每当obj
在其属性之一中具有StorageFile
时,它几乎每次都能正常工作。 (我从主题中得到消息)
我无法理解Storagefile
是密封的,无法扩展,但是为什么有人( WinJS?
)试图扩展它? 我应该更改clone
方法还是不应该将StorageFile
作为属性值?
JavaScript对象属性可能无法枚举,并且对于'for'或'Object.keys'隐藏
查看defineProperty方法https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.