每个对象都是一个函数,每个函数都是对象

我正在阅读这个链接JavaScript_syntax

这似乎是循环的 - 每个函数都是一个对象,每个对象本身都是一个函数。 原子是哪一个? 有人能以更好的方式解释吗?


  • 任何不是原始类型(undefined,null,number,string,boolean)都是JavaScript中的对象(或实例)。 这意味着functionobject继承。

  • 对象实例可以包含更多可以是函数的实例。 这就是我们所说的“方法”(因为它有一个自动的this变量)。

  • 由于不能“调用”每个对象实例,因此不是每个对象都是一个函数。


  • 每个功能都是一个对象。 对象可以包含函数(方法),但对象不是必需的函数。


    我认为这个概念经常被误解。

    一个可视化JS类型关系的实用程序http://jstype.herokuapp.com/#/home

    Javascript数据类型

  • 原始类型 - 数字,字符串,布尔值,空和未定义。
  • 所有非基元类型都是对象
  • var foo = { }; 
    var foo = [1, 2, 3]; 
    var foo = function abc() { return "hello world"; }; 
    var foo = new Number(30); 
    var foo = new String("Hello World"); 
    var foo = new Boolean(true); 
    var foo = new RegExp(/[foo]+/);
    
    // All 'foo` are object. 
    链接地址: http://www.djcxy.com/p/76345.html

    上一篇: Every Object is a function and every function is Object

    下一篇: Is it better to return `undefined` or `null` from a javascript function?