Object.create
Object.create() 方法会使用指定的原型对象及其属性去创建一个新的对象。
Object.create(proto[, propertiesObject])proto新创建对象的原型对象。propertiesObject可选。如果没有指定为undefined,
则是要添加到新创建对象的可枚举属性(即其自身定义的属性,而不是其原型链上的枚举属性)对象的属性描述符以及相应的属性名称。
这些属性对应Object.defineProperties()的第二个参数。
返回值:在指定原型对象上添加新属性后的对象。
     <script type="text/javascript">
            function People(){
                
            }
            People.prototype={
                name:'Jane',
                age:14,
                getName:function(){
                    console.log(this.name);
                }
            }
            var person=Object.create(People.prototype);
            person.getName();//Jane
        </script>
第二个参数
var newObj = Object.create(null,{ value:{ writable:true, configurable:true, value: "hello" } }); console.log(newObj)

一个没有原型的对象
function People(){} People.prototype={ name:'Jane', age:14, getName:function(){ console.log(this.name); } } var newObj = Object.create(People.prototype,{ name:{ writable:true, configurable:true, value: "Jack" } }); newObj.getName()// Jack console.log(newObj instanceof People) //true (instanceof运算符用来测试一个对象在其原型链中是否存在一个构造函数的prototype属性 )
 
                     
                    
                 
                    
                
 
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号