jshashtable.each使用现有函数

jshashtable.each use existing function

本文关键字:函数 each jshashtable      更新时间:2023-12-13

所以我定义了一个Hashtable(使用jshashtable.js):

hashy = new Hashtable();

我在里面放了一些钥匙:

hashy.put("hi", "yay");
hashy.put("hello", "yes");

现在我想用.each来迭代它,正如医生所说:

hashy.each(iterator());

但它说"对象不是函数"

现在,如果我这样做:

hashy.each(function() { });

它是有效的,但有没有办法用这种方式调用现有的函数?

我刚刚意识到最明显的答案是:

hashy.each(function(){迭代器();});

假设您的iterator函数如下所示:

function iterator(key, value) {
    // Do something with key and/or value
}

然后只需传入不带括号的函数。使用括号,您将立即执行该函数(仅执行一次),并将返回的值传递给each(),这可能不是您想要的。

hashy.each(iterator);