js函數apply()的用法有以下幾種:
調用函數并設置this的值:apply()方法可以調用一個函數,并設置函數內部的this指向。語法為:functionName.apply(thisValue, [arguments])。其中,thisValue是要設置的this的值,arguments是一個數組或類數組對象,表示傳遞給函數的參數。
調用函數并傳遞參數:apply()方法可以調用一個函數,并傳遞參數。語法為:functionName.apply(this, argsArray)。其中,argsArray是一個數組或類數組對象,表示傳遞給函數的參數。
借用其他對象的方法:apply()方法可以借用其他對象的方法。通過apply()方法,可以將一個對象的方法應用于另一個對象,從而實現方法的復用。
數組操作:apply()方法可以將一個數組作為參數,傳遞給另一個函數。常見的用法是將Math對象的方法應用于數組,實現對數組的操作,如Math.max.apply(null, array)可以找到數組中的最大值。
需要注意的是,apply()方法在ES6中已經被箭頭函數和擴展運算符替代,因此在新的代碼中更推薦使用箭頭函數和擴展運算符來實現apply()的功能。