呼び出し、適用、バインドの使用

Erhaは、呼び出し、適用、バインドの類似点と相違点を知らなかったと聞きました。患者のゴールデンレトリバーが説明を始めました(要点のみ)
1.呼び出し:栗:

var obj = {
    
     name: 'call' };
var Fn = function (name){
    
     return name+this.name }
console.log(Fn.call(obj,obj.name))  //callcall

最初のパラメーター:関数のこのポイントを変更します
。2番目のパラメーター:パラメーターを文字列の形式で渡します(複数のパラメーターはコンマで区切られます)
2.適用:栗

var arr = [1,2,3,4,5,1000000000];
var Fn = function(){
    
    
	for(let i in arguments){
    
    
		console.log(arguments[i])
	}
}
Fn.apply(arr,arr) //1,2,3,4,5,1000000000

最初のパラメーター:関数のこの点を変更します
。2番目のパラメーター:パラメーターを文字列の形式で渡します(パラメーターは配列の形式で、数値はパラメーターの長さに等しい)
3. bing:栗

var obj = {
    
     name: 'bind' };
var Fn = function (name){
    
     return name+this.name }
console.log(Fn.bind(obj,obj.name)())  //bindbind

最初のパラメーター:関数のこのポイントを変更します
。2番目のパラメーター:パラメーターをストリングの形式で渡し(複数のパラメーターはコンマで区切られます)
、括弧を追加します。バインドは自己起動パラメーターではないため、手動で呼び出す必要があります

おすすめ

転載: blog.csdn.net/DoLi_JIN/article/details/106019359