• 普通函数和构造函数的区别


    在命名规则上,构造函数一般是首字母大写,普通函数遵照小驼峰式命名法。
    在函数调用的时候:
    function fn() { }
         构造函数:1. new fn( )
                         2 .构造函数内部会创建一个新的对象,即f的实例
                         3. 函数内部的this指向 新创建的f的实例
                         4. 默认的返回值是f的实例
         普通函数:1. fn( )
                         2. 在调用函数的内部不会创建新的对象
                         3. 函数内部的this指向调用函数的对象(如果没有对象调用,默认是window)
                         4. 返回值由return语句决定
     
     构造函数的返回值
         有一个默认的返回值,新创建的对象(实例);
         当手动添加返回值后(return语句):
              1. 返回值是基本数据类型-->真正的返回值还是那个新创建的对象(实例)
              2. 返回值是复杂数据类型(对象)-->真正的返回值是这个对象
     
    看一个常见的面试题
     1 <script>
     2     function foo() {
     3         var f2 = new foo2();
     4         console.log(f2);    //{a: 3}
     5         console.log(this); //window
     6         return true;
     7     }
     8     function foo2() {
     9         console.log(this); //foo2类型的对象 不是foo2函数
    10 //        this.age = 30;
    11         return {a: 3};
    12     }
    13     var f1 = foo();
    14     console.log(f1); // true
    15 </script>
  • 相关阅读:
    py程序----两个判断回文的程序
    Python特性
    python-基本数据类型
    shell编程第一天
    iptables防火墙
    纤维参数测量
    线性代数及其应用(最小二乘、PCA、SVD)
    水流方向检测
    微信跳一跳-MATLAB实现
    相机标定opencv实现
  • 原文地址:https://www.cnblogs.com/2010master/p/5904087.html
Copyright © 2020-2023  润新知