运行程序,解读this指向---case6

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运行程序,解读this指向---case6相关的知识,希望对你有一定的参考价值。

function Parent() {
  this.a = 1;
  this.b = [1, 2, this.a];
  this.c = { ckey: 5 };
  this.show = function () {
    console.log(this.a , this.b , this.c.ckey);
  }
}
function Child() {
  this.a = 2;
  this.change = function () {
    this.b.push(this.a);
    this.a = this.b.length;
    this.c.ckey = this.a++;
  }
}
Child.prototype = new Parent(); 
var parent = new Parent();
var child1 = new Child();
var child2 = new Child();
child1.a = 11;
child2.a = 12;
parent.show(); // 1 [1,2,1] 5
child1.show(); // 11 [1,2,1] 5
child2.show(); // 12 [1,2,1] 5
child1.change();
child2.change(); 
parent.show(); // 1 [1,2,1] 5
child1.show(); // 5 [1,2,1,11,12] 5
child2.show(); // 6 [1,2,1,11,12] 5

 

以上是关于运行程序,解读this指向---case6的主要内容,如果未能解决你的问题,请参考以下文章

运行程序,解读this指向---case5

专题4:全方位解读javascript中this

详解javascript中this的工作原理

setTimeout中所执行函数中的this,永远指向window

JS详细图解全方位解读this

this指向了解