• 深入理解Javascript原型和闭包(2)——函数和对象的关系


    上文已经提到,函数是对象的一种,因为可以通过instanceof判断。

    1 var fn = function () { };
    2 console.log(fn instanceof Object);  // true

    函数是一种对象,但函数不像数组那样——你可以说数组是对象的一种,因为数组就像对象的一个子集一样。但函数与对象之间却不仅仅是包含与被包含的关系。

    先看一个小例子

    1         function Fn() {
    2             this.name = '王福朋';
    3             this.year = 1988;
    4         }
    5         var fn1 = new Fn();

    上面的例子说明:对象可以通过函数来创建

     1         //var obj = { a: 10, b: 20 };
     2         //var arr = [5, 'x', true];
     3 
     4         var obj = new Object();
     5         obj.a = 10;
     6         obj.b = 20;
     7 
     8         var arr = new Array();
     9         arr[0] = 5;
    10         arr[1] = 'x';
    11         arr[2] = true;

    而其中的 Object 和 Array 都是函数:

    1 console.log(typeof (Object));  // function
    2 console.log(typeof (Array));  // function

    对象是函数创建得,而函数本身又是一种对象。那对象和函数到底是什么关系呢,这就要说prototype原型了。

  • 相关阅读:
    Groovy Urlencode编码
    PowerShell导入自定义公共函数
    Groovy获取对象类型、属性
    adb名称操作模拟器
    《坚不可摧》——乔布斯演讲
    马拉松节奏跑(转载)
    马拉松配速
    什么是思考力三要素?(转载)
    Python解析JSON为实体
    excel宏的用法
  • 原文地址:https://www.cnblogs.com/endlessmy/p/8548042.html
Copyright © 2020-2023  润新知