• 首页 Home
  • 简介 About
  • 项目 Service
  • 案例 Cases
  • 新闻 News
  • 技术文章 本硕新闻 行业资讯

    [javascript]普通函数和构造函数的一些区别

    发表时间:2019-03-07  热度:

    构造函数也是一个普通函数,创建方式和普通函数一样,但构造函数习惯上首字母大写

    function objectone(text){  //普通函数

    var test=new Object();

    test.t=300;

    test.run = function(){

    return (this.t - text );

    }

    return test;

    }

    var Object1 = objectone(1); //普通函数的调用方式:直接调用 person();

     

    function Objecttwo(text){  //构造函数     this相当于后台自动 new Object

    this.t=300;

    this.run = function(){

    return (this.t - text );

    }

    //return this; 不需要return 不需要返回对象引用

    var Object2  =new Objecttwo("1");  //构造函数必须使用new运算符来调用 new Person();

     

    // alert(Object1.run()); //299

    // alert(Object2.run()); //299

     

    // alert(Object1 instanceof Objectone);   false//不可以识别对象

    // alert(Object2 instanceof Objecttwo);   true//可以识别对象引用是来自Objecttwo

     

     

    //alert(Objecttwo("1")); //undefined  //不可使用普通函数调用方法

     

     

    var Object3 = new Object();

    Objecttwo.call(Object3,2);   //构造函数对象冒充

    //alert(Object3.run()); //298  //不可使用普通函数调用方法

     

    文章怎么样?
    相关资讯