js apply,call最簡單理解
阿新 • • 發佈:2021-01-01
通過 apply() 方法,您能夠編寫用於不同物件的方法。
const person = {
firstName: 'a',
lastName: 'b',
fullName: function (city, country) {
return this.firstName + " " + this.lastName + "," + city + "," + country;
}
}
const person1 = {
firstName: "Bill",
lastName: "Gates"
}
console.log(person.fullName('洛杉磯', '美國'))
console.log(person.fullName.apply(person1, ["Seatle", "USA"]))
apply()將修改原來的方法中this的指向
call() 和 apply() 之間的區別
不同之處是:
call() 方法分別接受引數。
apply() 方法接受陣列形式的引數。
如果要使用陣列而不是引數列表,則 apply() 方法非常方便。
console.log(person.fullName.call(person1, "Seatle" , "USA"))
/** 輸出結果一樣的 */