定义和用法
constructor 属性返回对创建此对象的数组函数的引用。
语法
实例
例子 1
在本例中,我们将展示如何使用 constructor 属性:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <script type= "text/javascript" >
var test= new Array();
if (test.constructor==Array)
{
document.write( "This is an Array" );
}
if (test.constructor==Boolean)
{
document.write( "This is a Boolean" );
}
if (test.constructor==Date)
{
document.write( "This is a Date" );
}
if (test.constructor==String)
{
document.write( "This is a String" );
}
</script>
|
登录后复制
输出:
例子 2
在本例中,我们将展示如何使用 constructor 属性:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <script type= "text/javascript" >
function employee(name,job,born)
{
this .name=name;
this .job=job;
this .born=born;
}
var bill= new employee( "Bill Gates" , "Engineer" ,1985);
document.write(bill.constructor);
</script>
|
登录后复制
输出:
1 2 | function employee(name, job, born)
{ this .name = name; this .job = job; this .born = born;}
|
登录后复制
示例&说明
以下代码中的[native code],表示这是JavaScript的底层内部代码实现,无法显示代码细节。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | var str = "张三" ;
alert(str.constructor);
alert(str.constructor === String);
var arr = [1, 2, 3];
alert(arr.constructor);
alert(arr.constructor === Array);
var num = 5;
alert(num.constructor);
alert(num.constructor === Number);
function Person(){
this .name = "CodePlayer" ;
}
var p = new Person();
alert(p.constructor);
alert(p.constructor === Person);
var o = { "name" : "张三" };
alert(o.constructor);
alert(o.constructor === Object);
function foo(){
alert( "CodePlayer" );
}
alert(foo.constructor);
alert(foo.constructor === Function);
function bar(){
alert( "CodePlayer" );
}
alert(bar.prototype.constructor);
alert(bar.prototype.constructor === bar);
|
登录后复制
为了将实例的构造器的原型对象暴露出来, 比如你写了一个插件,别人得到的都是你实例化后的对象, 如果别人想扩展下对象,就可以用 instance.constructor.prototype 去修改或扩展原型对象
以上是JavaScript返回对创建此对象的数组函数的引用属性constructor的详细内容。更多信息请关注PHP中文网其他相关文章!