如何在第一个函数参数中将一个函数传递给另一个函数
How would I pass one function to another function in the first functions parameters?
如何将testx函数作为参数传递给change_text函数?
function change_text(to, id, func) {
this.to = to;
this.id = id;
this.doit = function() {
this.target = document.getElementById(this.id);
this.target.innerHTML = this.to;
}
func;
}
function testx() {
alert("TESTING");
}
var box = new change_text("HELLO, WORLD", 'theboxtochange', 'testx()');
只需给出它的名称(不带括号或引号):
var box = new change_text("HELLO, WORLD", 'theboxtochange', testx);
函数是第一类对象,因此它们的名称是对它们的引用。
在change_text
中,你可以像任何其他指向函数的符号一样,使用对它的引用来调用它(func
),所以:
func();
我已经改进了代码,现在我明白函数是一类对象,所以任何对象名称也是对它的引用。 并且该名称可以通过省略名称周围的括号来传递给参数中的其他函数。
function change_text(to, id, func) {
this.to = to;
this.id = id;
this.doit = function() {
this.target = document.getElementById(this.id);
this.target.innerHTML = this.to;
}
this.func = func;
}
function testx() {
alert("TESTING");
}
var box = new change_text("HELLO, WORLD", 'theboxtochange', testx());
box.func()
最后一行代码调用传递给第一个函数的函数。
相关文章:
- 创建一个类似链接的按钮,并通过Javascript函数打开一个新的弹出窗口
- 我可以在json对象中添加一个函数吗
- Javascript使函数一个接一个地执行
- 是JavaScript中的函数一个对象
- 两个几乎相等的jQuery函数;一个适用于IE,一个不适用于IE
- 两个Javascript函数一个window.onload=Custom.init;和一个window.onload=f
- 使javascript加载函数一个接一个地执行
- 如何通过两个嵌套的匿名函数(一个带有超时的事件处理程序)传递变量
- 为什么我不能让两个jQuery函数一个在另一个里面呢?
- 给函数一个变量名,而不是它的值
- 如何使用嵌入函数(一个滚动页由Pete - peachananr)
- 是否有可能给JavaScript函数一个类型/类?
- 确保两个函数一个接一个地执行,其中第一个函数内部有一个异步调用
- 两个不同的ajax函数一个接一个调用返回相同的值
- jQuery第一次更改函数一个工作
- 给这个函数一个id
- 如何给回调函数一个值一个变量在特定时刻
- 使用回调使两个函数一个接一个地运行
- 两个函数(一个用php)是否可以用“;onclick”;
- 两个几乎相同的函数.一个函数用Queue进行排队.Jquery效果在queued函数上不起作用.为什么