gpt4 book ai didi

javascript - "return this"在 javascript 函数中做什么?

转载 作者:IT王子 更新时间:2023-10-29 03:08:27 25 4
gpt4 key购买 nike

我想知道,“return this”在 javascript 函数中做了什么,它的目的是什么?假设我们有以下代码:

Function.prototype.method = function (name, func) {
this.prototype[name] = func;
return this;
};

“return this”在函数内部做了什么?

我知道上面的代码是做什么的,以及“this”关键字的用途。我只是不知道“return this”在函数内部做了什么。

最佳答案

它指的是当前正在调用该方法的对象实例。它用于链接。例如,您可以这样做:

myObject.foo().bar();

由于 foo 返回 this(对 myObject 的引用),bar 也会在该对象上被调用.这和做是一样的

myObject.foo();
myObject.bar();

但需要更少的输入。

这是一个更完整的例子:

function AnimalSounds() {}

AnimalSounds.prototype.cow = function() {
alert("moo");
return this;
}

AnimalSounds.prototype.pig = function() {
alert("oink");
return this;
}

AnimalSounds.prototype.dog = function() {
alert("woof");
return this;
}

var sounds = new AnimalSounds();

sounds.cow();
sounds.pig();
sounds.dog();

sounds.cow().pig().dog();

http://jsfiddle.net/jUfdr/

关于javascript - "return this"在 javascript 函数中做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8300844/

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