• Object Constructor


    语法

    Object.constructor

    返回值

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

    // 字符串:String()
    var str = "张三";
    alert(str.constructor); // function String() 
    alert(str.constructor === String); 
     
    // 数组:Array()
    var arr = [1, 2, 3];
    alert(arr.constructor); // function Array() 
    alert(arr.constructor === Array);
     
    // 数字:Number()
    var num = 5;
    alert(num.constructor); // function Number() 
    alert(num.constructor === Number);
     
    // 自定义对象:Person()
    var p = new Person();
    alert(p.constructor); // function Person()
    alert(p.constructor === Person); 
     
    // JSON对象:Object()
    var o = { "name" : "张三"};
    alert(o.constructor); // function Object() 
    alert(o.constructor === Object);
     
    // 自定义函数:Function()
    function foo(){
        alert("CodePlayer");
    }
    alert(foo.constructor); // function Function()
    alert(foo.constructor === Function); 
     
    // 函数的原型:bar()
    function bar(){
        alert("CodePlayer");
    }
    alert(bar.prototype.constructor); // function bar()
    alert(bar.prototype.constructor === bar); 
    // 自定义对象:Person()
    function Person(){
        this.name = "CodePlayer";
    }
    var p = new Person();
    alert(p.constructor); // function Person(){ this.name = "CodePlayer"; }
    alert(p.constructor === Person); // true
     
    // JSON对象:Object()
    var o = { "name" "张三"};
    alert(o.constructor); // function Object() { [native code] }
    alert(o.constructor === Object); // true
     
    // 自定义函数:Function()
    function foo(){
        alert("CodePlayer");
    }
    alert(foo.constructor); // function Function() { [native code] }
    alert(foo.constructor === Function); // true
     
    // 函数的原型:bar()
    function bar(){
        alert("CodePlayer");
    }
    alert(bar.prototype.constructor); // function bar(){ alert("CodePlayer"); }
    alert(bar.prototype.constructor === bar); // true
     

    所有对象都会从它的原型上继承一个 constructor 属性

    JavaScript 内部会执行:

    1.为该函数添加一个原形(即 prototype)属性

    2.为 prototype 对象额外添加一个 constructor 属性,并且该属性保存指向函数F 的一个引用

  • 相关阅读:
    linux 笔试题
    shell -Z- d等等代表
    shell中for循环总结
    linux启动过程
    linux面试题3
    linux面试题2
    小峰servlet/jsp(4)EL表达式
    小峰servlet/jsp(3)登陆功能实现
    小峰servlet/jsp(2)
    java日期比较例子等...
  • 原文地址:https://www.cnblogs.com/xiajiejie/p/9960354.html
Copyright © 2020-2023  润新知