JavaScript中apply、call和bind如何区分使用场景?
- 内容介绍
- 文章标签
- 相关推荐
本文共计698个文字,预计阅读时间需要3分钟。
JavaScript中apply、call和bind的区别
在JS中,apply、call和bind这三个方法都是用来改变函数的this对象的。它们的主要区别在于语法和用法。
首先,总结一下它们的相似之处:它们都用于改变函数的this指向。
1. apply、call和bind的使用方式: - call: 函数.call(thisValue, [arg1[, arg2[, ...]]]); - apply: 函数.apply(thisValue, [argsArray]); - bind: 函数.bind(thisValue, [arg1[, arg2[, ...]]]);
2. 区别: - call和apply:都需要传入具体的参数,且apply需要数组作为参数。 - bind:可以不传参数,返回一个新的函数,该函数的this指向已改变。
本文共计698个文字,预计阅读时间需要3分钟。
JavaScript中apply、call和bind的区别
在JS中,apply、call和bind这三个方法都是用来改变函数的this对象的。它们的主要区别在于语法和用法。
首先,总结一下它们的相似之处:它们都用于改变函数的this指向。
1. apply、call和bind的使用方式: - call: 函数.call(thisValue, [arg1[, arg2[, ...]]]); - apply: 函数.apply(thisValue, [argsArray]); - bind: 函数.bind(thisValue, [arg1[, arg2[, ...]]]);
2. 区别: - call和apply:都需要传入具体的参数,且apply需要数组作为参数。 - bind:可以不传参数,返回一个新的函数,该函数的this指向已改变。

