JS 中的 bind, call, apply 总结
date
Sep 19, 2023
Person
slug
js-bind-call-apply
status
Published
tags
JS
summary
type
Post
在JavaScript中,
call、bind 和 apply 是用于改变函数上下文(函数的执行环境)的方法。它们的作用有所不同,下面分别给出它们的实例用法:1. 
call 方法:call 方法用于调用一个函数,并且可以指定函数内部的 this 值,并且可以传递参数作为函数的参数。下面是一个示例:在上面的示例中,通过 
call 方法,我们将 greet 函数的上下文从全局对象改变为 person1 和 person2 对象,并且传递了一个额外的参数作为 greeting。2. 
bind 方法:bind 方法用于创建一个新的函数,该函数与原函数具有相同的函数体,但可以预先指定函数内部的 this 值,并返回这个新函数。下面是一个示例:在这个示例中,我们使用 
bind 方法创建了一个新函数 greetPerson,它的 this 值已经绑定到了 person 对象上。3. 
apply 方法:apply 方法与 call 类似,但它接受一个参数数组作为函数的参数。下面是一个示例:在这个示例中,我们使用 
apply 方法将 args 数组的元素作为参数传递给 greet 函数。与 call 不同,apply 接受参数数组,可以动态传递参数。