js里创建的函数本身作为一个实例对象都是由内置对象Function作为构造函数创造出来的,所谓var f = funciton(a){b}即等同于f = new Function(a,b)。

同时js里Object也是一个构造函数,因此他也是Function加工出来的。

Function作为一个对象实例,也是Function加工出来的,具有自原性。

但Function的加工原料,也就是原型链的父原型是Object,即Object可以通过Function变成Function。

那么是什么通过Function的加工变成了Object呢?

这就是最原始的那个静态种子,答案就是Object.prototype,在控制台里打印出来是:

  1. {constructor: ƒ, __defineGetter__: ƒ, __defineSetter__: ƒ, hasOwnProperty: ƒ, __lookupGetter__: ƒ, …}

    1. constructor: ƒ Object()
    2. hasOwnProperty: ƒ hasOwnProperty()
    3. isPrototypeOf: ƒ isPrototypeOf()
    4. propertyIsEnumerable: ƒ propertyIsEnumerable()
    5. toLocaleString: ƒ toLocaleString()
    6. toString: ƒ toString()
    7. valueOf: ƒ valueOf()
    8. __defineGetter__: ƒ __defineGetter__()
    9. __defineSetter__: ƒ __defineSetter__()
    10. __lookupGetter__: ƒ __lookupGetter__()
    11. __lookupSetter__: ƒ __lookupSetter__()
    12. get __proto__: ƒ __proto__()
    13. set __proto__: ƒ __proto__()

而Object.prototype.__proto__==null

Object.prototype.constructor==Object()

那么这就可以这样来梳理了,null作为原料通过Object函数构造出了Object.prototype,

Object.prototype作为原料通过Function函数构造出了Object,

Object作为原料通过Function函数构造出了Function本身。

完美解决了,对吧!

null是什么呢?和数字符字面常量,字符串字符常量,true,false,undefine一起作为js的基本类型,再加上那些运算符等符号就可以看作是开天辟地的真正基础了。而这些基础为什么不是对象呢?不是js里万物皆对象吗?

对于js的创造者来说,仅仅是利用一些相等搭了一个圈,但沉浸在这个世界的人们就永远也看不到其中事物的本源了。

这大概和鸡生蛋还是蛋生鸡这样的哲学本源问题是一致的,就像无论唯心还是唯物,在 西部世界 里所追寻的那个迷宫的核心究竟如何,只要还在其中,就是永远没有答案的。

先有对象还是先有函数,鸡生蛋、蛋生鸡的问题。有关js里内置对象Function和Object的思考相关推荐

  1. js 序列化内置对象_内置序列化技术

    js 序列化内置对象 本文是我们名为" 高级Java "的学院课程的一部分. 本课程旨在帮助您最有效地使用Java. 它讨论了高级主题,包括对象创建,并发,序列化,反射等. 它将指 ...

  2. 2、js常用内置对象

    文章目录 1. JS内置对象是什么? 2. 字符串对象及常用方法 3. 数组对象及常用方法 4. Math对象及常用方法: 5. Date对象及常用方法 6. Document 对象 1. JS内置对 ...

  3. JS标准内置对象 数组 的 34 个方法

    先放一个语雀的链接: https://www.yuque.com/docs/share/13314a2f-05c0-4de6-8d61-8acd9e566ad4?# <JS内置对象 Array& ...

  4. 11、JS笔记-内置对象

    1.内置对象 js中对象分为三种: 自定义对象.内置对象.浏览器对象(js独有) 内置对象: js语言自带的对象,供开发者使用,提供一些常用或基本的功能(属性和方法) 2.Math对象 Math中所有 ...

  5. js浏览器内置对象和js内置对象

    浏览器内置 1.Location 对象 hash :返回一个URL的锚部分 host 返回一个URL的主机名和端口 hostname 返回URL的主机名 href 返回完整的URL pathname ...

  6. 【js】内置对象String的常用方法

    <html><head></head><script type="text/javascript">var stuName1 = & ...

  7. 【js】内置对象array的常见方法的使用

    <html><head></head><script type="text/javascript">//数组var stuName1 ...

  8. js中内置对象Math()常用方法笔记

    Math.random()获取随机数,范围[0,1)之间的随机小数 var num = Math.random(); console.log(num); 复制代码 Math.floor() 向下取整 ...

  9. 下面属于python内置对象的有哪些_python练习题-写一个函数,打印所有包含copy方法的内置对象...

    代码: #encoding=utf-8 for i in dir(__builtins__): #print "i:",i try: #这里的i是个字符串,并不能直接用dir(i) ...

最新文章

  1. c++继承中的构造和析构
  2. 关于font-size对垂直居中影响的问题
  3. pywin32官方说明文档_GEE学习笔记 六十五:GEE的Python版API说明文档(英文版)
  4. Google+强推实名制引爆不满 用户增速放缓
  5. ActiveMQ 依赖JDK版本
  6. 营销管理手册_某连锁动物医院营销管理咨询项目方案成功汇报
  7. 4.3配置自定义情况的Bean实例
  8. Linux log工具:zlog编译安装及使用示例(同样适用交叉编译环境)
  9. 计算思维是利用计算机,计算机思维论文
  10. Win7下的OpenGL安装
  11. android BKS
  12. 腾讯优图:AI内容理解新实践
  13. 反射知识点总结《Lipp学习笔记》
  14. 前端校招该考察什么?一个面试官的思考
  15. 给幼儿园小朋友看的网络安全扫盲篇
  16. CHOJ 5202 自然数拆分Lunatic版 【完全背包模型】
  17. 怎么看网站有没有被收录(百度360搜狗等搜索引擎通用)
  18. Android Design 官方文档离线版(英文)!
  19. Excel VBA初级系列培训--课时3
  20. 公务员考试题集错解汇集之判断推理

热门文章

  1. ui自动化里面通过.text获取文本值进行断言【杭州多测师】【杭州多测师_王sir】...
  2. 2000年-2010年各省回族人口增长率
  3. Excel中78个统计函数
  4. 设置开机软件启动的方法
  5. 网摘-UML之手机订餐系统
  6. 微信h5游戏域名该怎么在微信中做好防封防屏蔽技术
  7. HDUOJ 1754 I Hate It
  8. 江西博微-南昌航空大学校招双选会
  9. 大数据应用须解决三大关键点
  10. iphone访问限制密码忘记,怎么办?