![240](https://cdn2.jianshu.io/assets/default_avatar/4-3397163ecdb3855a0a4139c34a695885.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
1. 闭包 闭包是指有权访问另一个函数作用域中变量的函数,创建闭包的最常见的方式就是在函数内创建函数,通过函数访问函数的局部变量,利用闭包可以突破作用链域 特性:函数内再嵌套...
七. 函数对象 (复习一下前面的知识点) 所有函数对象的proto都指向Function.prototype,它是一个空函数(Empty function) JavaScri...
关于第二大点,
“这两个实例都有一个 constructor (构造函数)属性,该属性(是一个指针)指向 Person“
“ console.log(person1.constructor == Person);//true“
“console.log(person2.constructor == Person); //true”
我觉得这里的说法有点出入
如果直接打印person1和person2对象,就会发现并没有发现有constructor属性。打印内容如下
{age:28
job:"Software Engineer"
name:"Zaxlct"
sayName:ƒ ()
__proto__:Object}
那为什么person1.constructor == Person 这个会是true,实际是因为在person1中没有找到constructor属性,顺着__proto__往上,找到了Person.prototype,而在这里才找到的constructor,而这个constructor是指向Person的,所以结果才会是true
但是这并不能说是实例上有一个constructor属性,我觉得这容易产生误解。
以上是个人观点,有错误请指正,谢谢。
第二篇已更新,点击进入第三篇已更新,点击进入 三篇文章都更新完毕,完整的剖析了 JS 原型与原型链,希望通过这些教程能让你对 Javascript 这门语言理解的更透彻! 一...