使用回调函数时,您可能会遇到需要传递额外参数的情况。本文解决了这个问题并提供了全面的解决方案。
您的初始尝试(如代码片段所示)涉及将参数直接传递给回调函数。虽然这适用于提供的示例,但如果您需要传递多个或复杂的参数,它可能会变得很麻烦。
更通用的解决方案是利用参数对象。这个特殊变量包含传递给函数的所有参数,包括函数参数中定义的参数以及调用期间传递的任何其他参数。
修订的代码片段:
<code class="javascript">function tryMe(param1, param2) { alert(param1 + " and " + param2); } function callbackTester(callback) { callback(arguments[1], arguments[2]); } callbackTester(tryMe, "hello", "goodbye");</code>
在修改后的代码中,callbackTester 函数现在接受单个参数,callback。在此函数中,我们使用arguments 对象来访问调用期间传递的附加参数,即param1 和param2。然后,这些参数将按预期传递给回调函数 tryMe。
这种方法有几个优点:
以上是如何在 JavaScript 中将参数传递给回调函数?的详细内容。更多信息请关注PHP中文网其他相关文章!