码迷,mamicode.com
首页 > Web开发 > 详细

js设计模式-原型模式

时间:2016-03-31 16:35:19      阅读:203      评论:0      收藏:0      [点我收藏+]

标签:

1.Object.create(obj,[]) 创建一个以obj为原型的对象。

function res4(){};
 res4.prototype=Object.create(myobj, {
  // foo会成为所创建对象的数据属性
  foo: { writable:true, configurable:true, value: "hello" },
  // bar会成为所创建对象的访问器属性
  bar: {
    configurable: false,
    get: function() { return 10 },
    set: function(value) { console.log("Setting `o.bar` to", value) }
}})

原型模式 是指 拷贝这些原型创建新的对象。

浅拷贝,深拷贝,object.create()创建。

深拷贝。

  function clone2(obj){
    var ret,k,b;
    if((b=(obj instanceof Array)) || obj instanceof Object){
      ret=b?[]:{};
      for(k in obj){
        ret[k]=clone2(obj[k]);
      }
    }else{
      ret=obj
    }
    return ret;
  }

可以用es6代替:

var o = Object.create(myobj);

 

js设计模式-原型模式

标签:

原文地址:http://www.cnblogs.com/yangxiaomie/p/5341395.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!