javascript - 我怎么能传递一个 JavaScript 函数而不直接说出它的名字呢?
问题描述
假设我有一百个函数和一百个 HTML 按钮,我想将它们全部分配给它们的点击事件。
我可以将它们命名为 button1, button2, button3, ... 和 function1, function2, function3 ...
然后说:
let btsn = document.getElementsByClassName("mybuttons");
for (int i = 0; i < 100; i++) {
btns[i].addEventListener("click", "function" + i);
}
当然这不起作用,因为字符串文字没有被翻译成对函数的实际引用,只是我随机说出它的名字而被遗忘了。
但是有什么方法可以让我实现这一点,就好像那是可能的一样?
编辑:
我正在寻找的确切功能可以通过将函数放在数组中来完成。
let funcs = [
function a() { ; }
function b() { ; }
function c() { ; }
function d() { ; }
function e() { ; }
]
let btsn = document.getElementsByClassName("mybuttons");
for (int i = 0; i < 100; i++) {
btns[i].addEventListener("click", funcs[i]);
}
解决方案
推荐阅读
- django - Django 找不到存在于 postgreSQL 数据库中的表
- asp.net-core - 您可以在两种查询类型之间创建一对一的关系吗?
- python - 数值积分 Python 与 Matlab
- python - Keras:model.fit() 和 model.fit_generator() 返回历史对象。如何获得 Keras 模型?
- docker - 如何找到主机中的 docker 容器目录在哪里?
- pandas - 遍历数据框列以查看单个单元格值是否在文件路径列表中
- rabbitmq - 我想向 RabbitMQ 中的特定消费者发送消息。你有解决方案吗?
- vim - Vim打开一定大小但关闭时返回终端窗口大小
- swift - 转换 String.Index?到国际
- python-3.x - Python 3.5:将字符串作为参数传递给子进程过程