bind()
ist eine integrierte Methode des Function
-Objekts. Ihr erster Parameter wird verwendet, um dies
in der aufrufenden Methode zu ändern . > zeigt auf. Es ist zu beachten, dass bind
eine neue Funktion zurückgibt, damit diese später aufgerufen werden kann. bind()
是Function
对象内建的方法,它们的第一个参数都是用来更改调用方法中this
的指向。需要注意的是bind
是返回新的函数,以便稍后调用。
1.语法:
function.bind(thisArg[,arg1[,arg2[, ...]]])
thisArg
:调用绑定函数时作为 this 参数传递给目标函数的值。 如果使用new运算符构造绑定函数,则忽略该值。当使用 bind
在 setTimeout 中创建一个函数(作为回调提供)时,作为 thisArg
传递的任何原始值都将转换为 object
。如果 bind
函数的参数列表为空,或者thisArg
是null
或undefined
,执行作用域的 this
将被视为新函数的 thisArg
。
arg1,
arg2,
...:当目标函数被调用时,被预置入绑定函数的参数列表中的参数。
返回值:返回一个原函数的拷贝,并拥有指定的this
值和初始参数
<script> //这是一个函数 function hello(name) { //this:执行上下文,程序的运行环境 //this当前是window,全局 this.name=name; console.log(this.name); } hello("天才上单"); //bind()可以改变函数中的this指向 //这是一个对象 const obj={ name :"天鹏下凡", }; //bind()只绑定不执行 let f1=hello.bind(obj,"那就这样吧!"); console.log(f1()); </script>
thisArg
: als dieser Parameter übergeben, wenn die Bindungsfunktion aufgerufen wird Wert der Zielfunktion. Wenn der neue Operator zum Erstellen der gebundenen Funktion verwendet wird, wird dieser Wert ignoriert. Wenn Sie bind
verwenden, um eine Funktion in setTimeout zu erstellen (bereitgestellt als Rückruf), wird jeder als thisArg
übergebene primitive Wert in ein object
konvertiert. Wenn die Argumentliste der Funktion bind
leer ist oder wenn thisArg
null
oder undefiniert
ist, gilt der Ausführungsbereich this
wird als thisArg
der neuen Funktion behandelt. arg1,
arg2,
...: Beim Aufruf der Zielfunktion werden die Parameter in der Parameterliste der gebundenen Funktion voreingestellt.
this <p><span style="font-family:arial, x-locale-body, sans-serif"><span style="background-color: rgb(255, 255, 255);">Wertsumme Anfangsparameter</span></span></p>
. 2. Beispiel: 2. Beispiel: 3. Ausgabe 2 )" Das obige ist der detaillierte Inhalt vonEine kurze Diskussion über bind() in JS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!