码迷,mamicode.com
首页 > 编程语言 > 详细

《Javascript权威指南》 构造函数

时间:2015-04-09 19:28:06      阅读:121      评论:0      收藏:0      [点我收藏+]

标签:

类和构造函数

使用new调用构造函数会创建新对象,构造函数的prototype属性被用作新对象的原型。

//构造函数,用以初始化新创建的“范围对象”
//没有创建并返回对象
function Range(from, to) { this.from = from; this.to = to; } Range.prototype ={ includes: function(x) { return this.from <= x && x <= this.to;}, foreach: function(f) { for (var x = Math.ceil(this.from); x <= this.to; x++) f(x); }, toString: function() { return "(" + this.from + "..." + this.to + ")"} }; var r = new Range(1,3); r.include(2); //true r.foreach(alert); console.log(r.toString()); //(1...3)

Range()构造函数只不过初始化this而已,不必返回这个新创建的对象,构造函数会自动创建对象,

 

constructor属性

函数都拥有prototype属性,这个属性的值是一个对象,它包含唯一一个不可枚举属性constructor。constructor属性的值是一个函数对象

var F = function() {};    
var p = F.prototype;      //F相关联的原型对象
var c = p.constructor;   //与原型对象相关联的对象
alert(c === F);            //true   F.prototype.constructor == F

 

对象通常继承的constructor属性指代它们的构造函数。

var o = new F();

o.constructor === F  //true

 

《Javascript权威指南》 构造函数

标签:

原文地址:http://www.cnblogs.com/surahe/p/4387901.html

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