var dog = { name: 'singledog', wangwang: function(){ console.log(this.name+"旺旺!"); } }; dog.wangwang();// singledog旺旺!
2.通过new 关键字创建
1 2 3 4 5 6 7 8
functionDog(name){ this.name = name; }; Dog.prototype.wangwang = function() { console.log(this.name+"wangwang!!"); }; var dog = new Dog("SingleDog:"); dog.wangwang();//SingleDog:wangwang!!
3.通过 ES5新引进的 Object.create() 方法创建
1 2 3 4 5 6 7 8
var dog = { name: 'singledog', wangwang: function(){ console.log(this.name+"旺旺!"); } }; var jDog = Object.create(dog);//创建一个新的对象 jDog 并继承 dog 对象 jDog.wangwang();//singledog旺旺!
原型(prototype)
prototype(原型)是js面向对象中非常重要的一个概念,是深入学习js是必须要理解的一个概念 每个方法 都有一个prototype属性,我们可以利用这个属性来大做文章 之前介绍了,我们生成一个需要用到 new 关键字,那么这个new 关键字与JAVA中的new一样吗?