js 对象的_proto_属性 和函数的prototype属性分析

bill是 Employee类型的实例,_proto_指向Employee.prototype

Employee.prototype有一个constructor属性,指向Employee函数自身

function employee 就是一个函数类型的对象了,有标准的arguments、caller、length(参数个数)、prototype等属性,
它的prototype跟bill._proto_指的是同一个对象。
因为每个对象都有_proto_属性,指向这个对象的创建函数的prototype对象,所以函数对象也有(有点绕,要记住定义一个的函数也是一个对象),
这里function employee的_proto_指向的是一个匿名函数对象,而不是Object类型的对象,或者是Function类型的对象,不知道为啥。
估计是函数定义语法实际是创建了一个匿名函数给函数名?


展开这个_proto_指向的匿名函数对象,它的constructor属性其实就是指向js标准Function引用类型,
说明是由new Function创建出来的,
js 对象的_proto_属性 和函数的prototype属性分析的更多相关文章
- js 对象的_proto_
js 对象呢,有个属性叫_proto_,以前没听说过,也没关注,最近看这个原型,就被迫知道了这个东西,js 这里面的东西,真是规定的很奇怪,具体为啥也不知道,就测试发现的,对象的_proto_属性,和 ...
- JS对象、数据类型区别、函数
对象 基本数据类型都是单一的值,值和值之间没有任何联系,变量之间独立,不能成为一个整体. 对象属于一种符合的数据类型,对象中可以保存对个不同数据类型的属性. 对象分类: 1.内建对象 由ES标准 ...
- js对象、构造函数、命名空间、方法、属性
<script language="javascript"> var myNameSpace = new Object(); //构造一个命名 空间myCla ...
- JS对象中,在原型链上找到属性后 最终将值拷贝给原对象 而不是引用
遇到一个面试题 要求写一个函数A,每次进行new操作时候能输出2,3,4,5... new A() // 输出2 new A() // 输出3 new A() // 输出4 function A() ...
- JS中增加日期格式化原型函数之prototype
/** * javascript Date format(js日期格式化) * 对Date的扩展,将 Date 转化为指定格式的String 月(M).日(d).小时(h).分(m).秒(s).季度( ...
- JS对象深入剖析
对象概述 Objects are mutable keyed collections. An object is a container of properties, where a propert ...
- js原型和原型链,以及__proto__、prototype属性
__proto__和prototype属性: 1.__proto__属性: 在JS里,万物皆对象(函数是对象.原型也是对象...).对象都具有属性__proto__,这个属性会指向该对象的原型. 2. ...
- js 面向对象中,定义一个函数的过程
定义一个函数做的两件事:1: 实例化一个Function对象:2: 实例化一个Object对象,并给该函数扩展prototype属性指向这个构造函数 大致过程如图所示: 每一种引用类型(函数,对象,数 ...
- javascript对象初探 (五)--- 函数对象的属性
与其他对象相同的是,函数对象中也有一个叫做constructor的属性,其引用就是Function()这个构造函数. function her(a){ return a; } console.log( ...
随机推荐
- vue 实现聊天框滚动到底
在需要出现滚动条的 DOM上添加 v-scroll 属性: <div class="chat-box" v-scroll="{auto: true}"&g ...
- 使用python爬虫爬取股票数据
前言: 编写一个爬虫脚本,用于爬取东方财富网的上海股票代码,并通过爬取百度股票的单个股票数据,将所有上海股票数据爬取下来并保存到本地文件中 系统环境: 64位win10系统,64位python3.6, ...
- 转载:mybatis踩坑之——foreach循环嵌套if判断
转载自:作者:超人有点忙链接:https://www.jianshu.com/p/1ee41604b5da來源:简书 今天在修改别人的代码bug时,有一个需求是在做导出excel功能时,mybatis ...
- sql里的ROW_NUMBER() OVER是啥意思?
是一个分析函数,生成一个排序列select row_number(XX) over(partition by XXX order by XX [desc/asc]) frou table;partit ...
- MFC实现一元稀疏多项式运算器
MFC实现一元稀疏多项式运算器 基本要求 输入并建立两个多项式 多项式a与b相加,建立和多项式c 多项式a与b相减,建立差多项式d 输出多项式a, b, c, d.输出格式:比如多项式a为:A(x)= ...
- pygme 安装
输入pip install pygame-1.9.3-cp36-cp36m-win32.whl ModuleNotFoundError: No module named 'requests' pip ...
- io 流操作hdfs
hdfs 文件上传 本地 --------> 文件系统对象 --------> hdfs 文件系统 输入流 ...
- [No0000171]wpf 类层次结构Class Hierarchy
1.DispatcherObject类表示具有相关联的对象分派器.调度程序处理要在特定线程上执行工作的请求队列.它能够在其关联的线程上调用方法. DispatcherObject是对象的基类,用于跟踪 ...
- [No000011A]Office Excel设置显示日期与星期
设置excel日期格式,自定义,yyyy-mm-dd 上午/下午 hh:mm:ss AM/PM dddd aaaa
- hive拉链表
前言 本文将会谈一谈在数据仓库中拉链表相关的内容,包括它的原理.设计.以及在我们大数据场景下的实现方式. 全文由下面几个部分组成:先分享一下拉链表的用途.什么是拉链表.通过一些小的使用场景来对拉链表做 ...