gpt4 book ai didi

javascript调用函数里面又是一个谜

转载 作者:行者123 更新时间:2023-12-03 17:02:24 26 4
gpt4 key购买 nike

函数 Obj1(参数) { this.test1 = 参数 || 1;

function Obj2(param, par)
{
this.test2 = param;
this.ob = Obj1;
this.ob(par);
}

现在为什么我这样做:

alert(new Obj2(44,55).test1); 

输出是55?如果我没有,如何“查看”test1 Obj2 istance通过原型(prototype)链链接两者?

谢谢

最佳答案

嗯,不清楚你想要的是什么,但发生这种情况的原因是因为:

this.ob = Obj1;

你把Obj1的方法添加到Obj2的对象实例中,当你在这里使用它的时候:

this.ob(par); 

方法 Obj1 中“this”的上下文是 Obj2 实例。因此该实例现在有一个 test1 成员。

实际上与继承无关,但它有点像混合。请记住,在 JS 中函数是一流的对象。

关于javascript调用函数里面又是一个谜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/537198/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com