`

Object的copy

 
阅读更多
the use of an object() function that accepts an object and returns a new one that has the parent as a prototype.
function object(o) {
function F() {}
F.prototype = o;
return new F();
}


If you need access to an uber property, you can modify the object() function
like so:
function object(o) {
var n;
function F() {}
F.prototype = o;
n = new F();
n.uber = o;
return n;
}

Using this function will be the same as the extendCopy(): you basically take an object such as twoDee, create a new object from it and then proceed to augmenting the new object.
var triangle = object(twoDee);
triangle.name = 'Triangle';
triangle.getArea = function(){return this.side * this.height / 2;};

The new triangle still behaves the same way:
>>> triangle.toString()
"shape, 2D shape, Triangle"
分享到:
评论

相关推荐

    object-copy_Objectcopy_

    在JavaScript中,`Object.copy`通常指的是对象复制的方法。虽然JavaScript原生并没有提供`Object.copy`这样的函数,但我们可以利用其他方法实现对象的深拷贝或浅拷贝。本篇文章将详细探讨对象复制的原理、深拷贝与浅...

    《深度探索C++对象模型》(Stanley B·Lippman[美] 著,侯捷 译)

    5.3 对象复制语意学(Object Copy Semantics) 5.4 对象的功能(Object Efficiency) 5.5 解构语意学(Semantics of Destruction) 第6章 执行期语意学(Runting Semantics) 6.1 对象的构造和解构(Object ...

    java类复制一个持久化对象

    Object objectCopy = classType.getConstructor(new Class[]{}).newInstance(new Object[]{}); Field fields[] = classType.getDeclaredFields(); for (int i = 0; i ; i++) { Field field = fields[i]; String...

    java反射机制详解

    Object objectCopy = classType.getConstructor(new Class[]{}).newInstance(new Object[]{}); // 获得对象的所有属性 Field fields[] = classType.getDeclaredFields(); for (int i = 0; i ; i++) { Field ...

    Java反射机制总结(实例分析)

    Object objectCopy = classType.getDeclaredConstructor().newInstance(); // 获取对象的所有字段 Field[] fields = classType.getDeclaredFields(); for (Field field : fields) { field.setAccessible(true)...

    java的反射机制

    Object objectCopy = constructor.newInstance(); // 获得对象的所有属性 Field[] fields = classType.getDeclaredFields(); for (Field field : fields) { field.setAccessible(true); Object value = field...

    java反射

    Object objectCopy = classType.getConstructor(new Class[]{}).newInstance(new Object[]{}); Field fields[] = classType.getDeclaredFields(); for (int i = 0; i ; i++) { Field field = fields[i]; field....

    JAVA反射机制详解

    Object objectCopy = classType.getConstructor(new Class[]{}).newInstance(new Object[]{}); // 获得对象的所有属性 Field fields[] = classType.getDeclaredFields(); for (int i = 0; i ; i++) { // 设置...

    java反射机制与动态代理

    Object objectCopy = classType.getConstructor(new Class[] {}).newInstance(new Object[]{}); // 获得对象的所有属性 Field[] fields = classType.getDeclaredFields(); for (Field field : fields) { ...

    java反射机制

    Object objectCopy = classType.getConstructor().newInstance(); // 获得对象的所有属性 Field[] fields = classType.getDeclaredFields(); for (Field field : fields) { String fieldName = field.getName()...

    深度探索C++对象模型 超清版

    5.3 对象复制语意学(Object Copy Semantics) 5.4 对象的功能(Object Efficiency) 5.5 解构语意学(Semantics of Destruction) 第6章 执行期语意学(Runting Semantics) 6.1 对象的构造和解构(Object ...

    Java语言的反射机制

    Object objectCopy = classType.getConstructor(new Class[]{}).newInstance(new Object[]{}); Field fields[] = classType.getDeclaredFields(); // ... 其他代码 } } ``` 这个类包含一个`copy`方法,可以...

    iOS 设计模式 原型模式

    MyClass *clonedObject = [originalObject copy]; ``` `clonedObject`现在是`originalObject`的一个副本,但它们是两个独立的对象。 ### 5. `NSCoding`协议 虽然`NSCopying`用于运行时的对象复制,但`NSCoding`...

    北风网内部版Objective-C培训资料

    id shallowCopy = [object copy]; id deepCopy = [object mutableCopy]; ``` #### 十三、归档 Objective-C提供了归档功能,可以将对象序列化为数据流或文件,以便于保存和恢复对象的状态。 ```objective-c NSData *...

    s3 rest

    - PUT Object Copy:复制一个对象到指定的存储桶。 - Initiate Multipart Upload:开始一个分片上传过程。 - Upload Part:上传一个分片作为分片上传的一部分。 - Complete Multipart Upload:完成一个分片上传。 - ...

    java反射机制总结

    public Object copy(Object obj) throws IllegalArgumentException, SecurityException, InstantiationException, IllegalAccessException, InvocationTargetException, NoSuchMethodException { // 获取对象的类...

Global site tag (gtag.js) - Google Analytics