我如何创建一个传递变量的函数,稍后我可以将其寻址到

How can I create a function that passes a variable which I can later address to

类似的执行在javascript addEventListener('event', function(e){}); 我试图理解的是,如何在 "e" 变量包含一个对象的情况下创建类似的结果。 到此我有了一些了解,对吗?

var some = function (node, func) {
func(node);
}

节点是我尝试实现的变量

e变量是关键字event的缩写。这作为最后一个参数传递给通过 addEventListener 调用的每个函数。 e 是一个事件对象,它包含对触发事件类型和事件父级(以及许多其他事件特定属性)的引用。

但这不是你的问题。你问是否可以将对象传递给函数:

var some = function (node, func) {
    func(node);
}

简而言之,是的。在您的示例中,函数 some 有两个参数。第一个可以是任何东西:字符串、数字、函数、元素(节点)等。第二个参数需要是一个函数对象。由于您尝试在 some 函数中调用。然后将 node 对象传递给该函数。

此外,JavaScript 中的所有内容都是对象。

工作示例:

some = function(node, func)
{
  if (typeof(func) != undefined && {}.toString.call(func) === '[object Function]') //test if object exists and is a function.
  {
    return func.bind(node);
  }
}

function alertIt(node)
{
  alert(node.textContent);
}


//event setter
document.querySelector("button").addEventListener("click", some(document.querySelector("div"), alertIt), false);
<div>Hello world!</div>
<button>Click to activate</button>