gpt4 book ai didi

JavaScript。如何在不调用函数的情况下使用单个参数?

转载 作者:行者123 更新时间:2023-11-28 12:20:05 24 4
gpt4 key购买 nike

我有一个问题很难理解。

问题是关于 JavaScript 函数及其参数。

例如,当我们编写一个函数时,我们可以为其提供从一个到多个参数

function myCustomFunction(parameterOne, parameterTwo)

然后我们可以在调用函数时使用这些参数作为参数,例如

myFunction("hello", "World")

当我们调用该函数时,它会给我们值“hello”“World”

但是,我看到很多人做的一件事我不太理解,那就是,有些人在编写函数时会传递参数 (el) 或(e) 我知道它们代表元素或事件。例如,他们在函数中使用参数而不调用函数

el.className = "something"
e.className = "somethingElse";

当我们创建函数时,该参数的用途是什么?我能用它做什么?

P.S 请尽可能详细地解释。

谢谢。

最佳答案

您没有显示具体的示例,但听起来您正在谈论作为回调传递给另一个函数的函数。在这种情况下,您将声明一个将由其他代码调用的函数。您将该函数作为参数传递,然后,稍后,其他代码调用您的函数并向其传递所需的参数。

这是一个例子:

document.getElementById("test").addEventListener("click", function(e) {
// this function is called by the browser when the click event occurs
// the argument `e` is an event object passed by the browser
console.log(e.target);
});

What is the purpose of that parameter when we create a function and what can I really do with it?

传递回调函数时,您必须知道该 API 的“契约”是什么(通常通过一些文档)。该合约将描述调用回调函数时将传递哪些参数。对于上面的单击事件监听器,约定是传递给回调函数的第一个参数将是具有描述的属性的事件对象 here 。当您声明回调时,您可以使用与传递给回调的参数相匹配的参数来声明它。该特定 API 还将 this 指针设置为调度事件的对象(在上面的示例中,是被单击的 DOM 对象)。

在像 C++ 这样的强类型语言中,编译器会强制您在回调函数上声明完全正确的参数。在 Javascript 中,没有这样的强制措施,因此您可以为参数提供适当且有意义的名称,并将它们按正确的顺序排列,以使代码清晰并正常工作。请记住,回调函数的调用者(而不是您)决定回调函数将获取哪些参数。

关于JavaScript。如何在不调用函数的情况下使用单个参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40320707/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com