主页 >> JsCss > JavaScript构造函数详解

2014/09/24 | 星期三 分类:JsCss | 没有评论 标签: | 作者: | 940 views

JavaScript构造函数详解

JavaScript构造函数详解

此页面的字,脚本,手抄一遍,电脑上打两遍,目的都是为了加深理解,最近懒,想到这招方法学习JavaScript,在此献丑鸟.

1.JavaScript构造函数中显式地用 return 语句返回一个自定义对象(包括函数)时,不论new调用该构造函数,还是对该构造函数的普通调用都会返回该自定义对象。

2.不易理解,请看示例代码.

或者

构造函数返回值
JavaScript 中的构造函数通常是没有返回值,但函数是允许有返回值的;若一个构造函数有一个返回值,则返回的对象成为new表达式的值,在此情况下,作为this的对象将会被抛弃。

另外:在构造函数中 var name; function 都成了私有方法,只能在构造函数内部使用。

3.构造函数中显式用return 返回一个非对象的值时(或为空的retrun;语句)用new调用该构造函数时,该return语句会被抛弃掉,会真正返回this指向的新创建的对象;普通调用该构造函数时,会返回retrun语句中的值。

4.构造函数没有显式的return语句时,用new调用该构造函数时,将返回this指向的对象,普通调用该构造函数时,将返回undefined值。

#new一个构造函数,它的生成对象的执行过程怎样子的?

#示例中的
#var this = Object.create( Person.prototype );
#return this;.
#这两个语句是被隐式执行的(实际代码中不用这样写)
#注意:一开始,新创建的对象就从Person.Prototype 中继承了所有属性;
#最后,隐式地返回了该新创建的对象;
#自动调用构造函数
#为了防止一个构造函数被当成普通函数被调用所带来的问题,通过判断this指向的对象是否是当前构造函数的实例来完成判断;

或者

#构造函数:使自己的对象多次复制,同时实例根据设置的访问等级可以访问其内部的属性和方法;
#当对象被实例化后,构造函数会立即执行它所包含的任何代码.

  • 本文目前尚无任何评论.
    1. 本文目前尚无任何 trackbacks 和 pingbacks.