简单谈谈javascript中this的隐式绑定_Javascript教程-查字典教程网
简单谈谈javascript中this的隐式绑定
简单谈谈javascript中this的隐式绑定
发布时间:2016-02-25 来源:查字典编辑
摘要:我们先来看一个例子functionfoo(){console.log(this.a);}varobj={a:2,foo:foo};obj.f...

我们先来看一个例子

function foo() { console.log( this.a ); } var obj = { a: 2, foo: foo }; obj.foo(); // 2

this指向了obj,因为foo执行时的call-site(可以理解为调用时所在作用域)在obj上面。注意是运行的时候,和在哪里声明的没有关系。

call-site and call-stack

call-site姑且理解为调用域,call-stack为调用栈。如下代码可以辅助我们理解

function baz() { // call-stack is: `baz` // so, our call-site is in the global scope console.log( "baz" ); bar(); // `bar` // so, our call-site is in `baz` console.log( "bar" ); foo(); // `bar` -> `foo` // so, our call-site is in `bar` console.log( "foo" ); } baz(); //
相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类