美文网首页
原型链和作用域链的区别

原型链和作用域链的区别

作者: 宏_4491 | 来源:发表于2021-03-08 15:32 被阅读0次

    原型链和作用域链的区别?

    答:

    原型链
    当访问一个对象的属性时, 会在这个对象的属性上去找,如果没有找到就会去这个对象的--proto-- 上去找,即构造函数prototype 上找,如果没有会一直在--proto-- 上找,直到最顶层,不到即为undefined 。这样一层一层地向上,就彷佛一条链子串起来,所以就叫原型链。

    作用域链
    变量取值会到创建这个变量的函数的作用域中取值,如果找不到,就会向上级作用域去查,直到查到全局作用域,这么一个查找过程形成的链条就叫做作用域链。

    区别就是
    作用域链是相对于变量而言, 原型是相对于属性而言
    作用域最顶层是window ,原型链最顶层是Object

    相关文章

      网友评论

          本文标题:原型链和作用域链的区别

          本文链接:https://www.haomeiwen.com/subject/vobpqltx.html