javascript 写类方式之二_js面向对象
程序员文章站
2022-05-19 19:37:11
...
2、原型方式
/**
* Person类:定义一个人,有个属性name,和一个getName方法
*/
function Person(){}
Person.prototype.name = "jack";
Person.prototype.getName = function() { return this.name;}
把类的属性(字段),方法都挂在prototype上。
造几个对象测试下:
var p1 = new Person();
var p2 = new Person();
console.log(p1.getName());//jack
console.log(p2.getName());//jack
复制代码 代码如下:
/**
* Person类:定义一个人,有个属性name,和一个getName方法
*/
function Person(){}
Person.prototype.name = "jack";
Person.prototype.getName = function() { return this.name;}
把类的属性(字段),方法都挂在prototype上。
造几个对象测试下:
复制代码 代码如下:
var p1 = new Person();
var p2 = new Person();
console.log(p1.getName());//jack
console.log(p2.getName());//jack
可以看出输出的都是jack,所以原型方式的缺点就是不能通过参数来构造对象实例 (一般每个对象的属性是不相同的) ,优点是所有对象实例都共享getName方法(相对于构造函数方式),没有造成内存浪费 。
上一篇: 六种PHP图片上传重命名提案研究与总结
下一篇: 帮忙转化一个数组,该怎么处理
推荐阅读
-
javascript Base类 包含基本的方法_js面向对象
-
javascript类式继承新的尝试_js面向对象
-
javascript 写类方式之六_js面向对象
-
JavaScript定义类或函数的几种方式小结_js面向对象
-
JavaScript 面向对象编程(2) 定义类_js面向对象
-
JavaScript 类的定义和引用 JavaScript高级培训 自定义对象_js面向对象
-
javascript 写类方式之七_js面向对象
-
JavaScript类和继承 this属性使用说明_js面向对象
-
javascript面向对象之二 命名空间_js面向对象
-
JavaScript定义类或函数的几种方式小结_js面向对象