
函数三种角色剖析
发布日期:2021-05-04 20:18:21
浏览次数:24
分类:原创文章
本文共 653 字,大约阅读时间需要 2 分钟。
函数三种角色剖析
function Fn(){ this.x=100;}Fn.prototype.getX = function(){ console.log(this.x);}let f1 = new Fn;let f2 = new Fn;
- 函数
函数本身是一个堆内存,内部存储的是一堆没有意义的代码字符串(上下文,作用域相关知识和概念) - 类(构造函数)
函数也可以被当作类操作,用new来执行(类、实例、原型、原型链相关概念) - 对象
函数还是一个对象,包含键值对,有prototype(原型),还有name(函数名)、length(形参个数)和__proto__(原型链)等属性
函数三种角色分析图
- 函数的三种角色本身没有必然联系
- 所有的函数(普通函数/构造函数…)都是Function类的一个实例
- Function.prototype值是一个匿名空函数,但是没有prototype。
- Function.prototype.__proto__指向Object.prototype(万物皆对象,每一个对象都是Object的实例)
- Function.__proto__也是指向Function.prototype
- Object是所有对象的基类,万物皆对象
- Object.prototype.__proto__值是null(若存在应该指向自己,这样毫无意义)
- 实例.__proto__指向当前所属类的实例([f1/ f2].__proto__ === Fn.peototype)
练习题+图形解析
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2025年04月08日 06时35分38秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
面试题:说说HashMap的扩容过程?
2019-03-04
坚持阅读
2019-03-04
关于序列化和反序列化
2019-03-04
富文本的图片处理显示太大问题
2019-03-04
vue路由变化马上知晓
2019-03-04
jquery写法的纠正
2019-03-04
公告栏横向滚动
2019-03-04
第四课:ES6的内置对象扩展(Set 数据结构:不重复数据)(2021/4/22)
2019-03-04
一、预编译(2021/4/23)
2019-03-04
四、js的深浅拷贝(2021/4/24)
2019-03-04
六、节流函数(2021/4/24)
2019-03-04
十四、数组扁平化处理(2021/4/27)
2019-03-04
一篇文章教会你使用Python下载抖音无水印视频
2019-03-04
阿里P8告诉你如何编写有效的Python简历推销自己!
2019-03-04
膜拜!终于有人能把人工智能算法的“逻辑回归”讲得明明白白了
2019-03-04
项目云环境搭建(1)——mysql数据库的搭建的和连接
2019-03-04
项目云环境搭建(2)——tomcat的部署和连接
2019-03-04
数据挖掘于分析实例解析——数据特征分析
2019-03-04
Redis的常见的面试题
2019-03-04
粘代码出现的错误解决
2019-03-04