如何使用ES6克隆Javascript类实例。
我对基于jquery或$extend的解决方案不感兴趣。
我看到过关于对象克隆的古老讨论,这些讨论表明这个问题相当复杂,但对于ES6,一个非常简单的解决方案出现了-我将把它放在下面,看看人们是否认为它是令人满意的。
编辑:有人建议我的问题是重复的;我看到了那个答案,但它已经有7年的历史了,而且涉及到使用ES6之前的js的非常复杂的答案。我建议我的问题,考虑到ES6,有一个简单得多的解决方案。
发布于 2021-02-27 09:36:23
使用与原始对象相同的原型和属性创建对象的副本。
function clone(obj) {
return Object.create(Object.getPrototypeOf(obj), Object.getOwnPropertyDescriptors(obj))
}
使用不可枚举的属性、getter、setter等。无法克隆内部插槽,这是许多内置javascript类型都有的(例如,Array、Map、Proxy)
https://stackoverflow.com/questions/41474986
复制相似问题