Constructor

 

构造函数(Constructor)在对象创建或者实例化时候被调用的方法。通常使用该方法来初始化数据成员和所需资源。构造器Constructor在js不能被继承,因此不能重写Overriding,但可以被重载Overloading

构造函数在C++中如果写成public属性那么可以继承

中文名 Constructor

目    的  初始化数据成员和所需资源

特    点   不能重写Overriding

意    义  构造函数

目录

  1. 1 简介
  2. 2 解析
  3. 说明
  4. 语法
  5. 返回值
  6. 示例&说明

简介

编辑 语音

构造函数,是一种特殊的方法,主要用来在创建对象时初始化对象,即为对象成员变量赋初始值。总与new运算符一起使用在创建对象的语句中,特别的一个类可以有多个构造函数,可根据其参数个数的不同或参数类型的不同来区分它们,即构造函数的重载

解析

编辑 语音

说明

JavaScript中的constructor

对象的constructor [1]  属性用于返回创建该对象的函数,也就是我们常说的构造函数 [1] 

在JavaScript中,每个具有原型的对象都会自动获得constructor属性。除了arguments、Enumerator、Error、Global、Math、RegExp、Regular Expression等一些特殊对象之外,其他所有的JavaScript内置对象都具备constructor属性。例如:Array、Boolean、Date、Function、Number、Object、String等。所有主流浏览器均支持该属性

浏览器支持

所有主要浏览器都支持constructor属性。 [2] 

c++

构造函数无返回值

语法

object.constructor (js)

classname() //c++

返回值

js对象的constructor属性返回创建该对象的函数的引用。

c++对象无返回值

示例&说明

以下代码中的[native code],表示这是JavaScript的底层内部代码实现,无法显示代码细节。

// 字符串:String()

var str = "张三";

document.writeln(str.constructor); // function String() { [native code] }

document.writeln(str.constructor === String); // true

// 数组:Array()

var arr = [1, 2, 3];

document.writeln(arr.constructor); // function Array() { [native code] }

document.writeln(arr.constructor === Array); // true

// 数字:Number()

var num = 5;

document.writeln(num.constructor); // function Number() { [native code] }

document.writeln(num.constructor === Number); // true

// 自定义对象:Person()

function Person(){

this.name = "CodePlayer";

}

var p = new Person();

document.writeln(p.constructor); // function Person(){ this.name = "CodePlayer"; }

document.writeln(p.constructor === Person); // true

// JSON对象:Object()

var o = { "name" : "张三"};

document.writeln(o.constructor); // function Object() { [native code] }

document.writeln(o.constructor === Object); // true

// 自定义函数:Function()

function foo(){

alert("CodePlayer");

}

document.writeln(foo.constructor); // function Function() { [native code] }

document.writeln(foo.constructor === Function); // true

// 函数的原型:bar()

function bar(){

alert("CodePlayer");

}

document.writeln(bar.prototype.constructor); // function bar(){ alert("CodePlayer"); }

document.writeln(bar.prototype.constructor === bar); // true

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值