Javascript 如何访问函数内部的函数?
今天我的问题是如何访问函数中的函数。例如,我有一个按钮,如果我点击它,它会发出警报。问题是,如果有一个函数围绕着这个函数,那么带有警报的内部函数就不会发出警报 下面是一个例子: html:Javascript 如何访问函数内部的函数?,javascript,jquery,Javascript,Jquery,今天我的问题是如何访问函数中的函数。例如,我有一个按钮,如果我点击它,它会发出警报。问题是,如果有一个函数围绕着这个函数,那么带有警报的内部函数就不会发出警报 下面是一个例子: html: 因此,doStuff()函数将无法工作。有人能帮我找到访问它的方法吗?你不能。这是因为它包含在一个范围内,您无法真正地全局访问该范围。访问它的唯一方法是将它暴露在以外的某个地方,什么都没有@Joseph,梦想家最终是正确的,但是如果你死心塌地地地调用嵌套在另一个函数中的函数,你可以使用OOP方法 创建一个ja
因此,
doStuff()
函数将无法工作。有人能帮我找到访问它的方法吗?你不能。这是因为它包含在一个范围内,您无法真正地全局访问该范围。访问它的唯一方法是将它暴露在以外的某个地方,什么都没有
@Joseph,梦想家最终是正确的,但是如果你死心塌地地地调用嵌套在另一个函数中的函数,你可以使用OOP方法
创建一个javascript“类”对象,并将您的函数范围限定为“this”:
- 接下来,将id添加到按钮
- 以及单击事件侦听器
var object = new Nothing();
object.doStuff();
function nothing() {
var doStuff = function() {
alert("This worked!")
}
var yourButton = getYourButton();
attachClickListener(yourButton, doStuff);
这是一个家庭作业问题吗 你可能会被要求做这样的事情:
var object = new Nothing();
object.doStuff();
function nothing() {
var doStuff = function() {
alert("This worked!")
}
var yourButton = getYourButton();
attachClickListener(yourButton, doStuff);
getYourButton和attachClickListener的实现留给读者。为什么该函数需要在另一个函数中?你根本不能
doStuff
仅在nothing()
中可见。在调用nothing
之前,nothing
中的代码(包括doStuff
)不会运行。所以你必须叫它。然后你可以通过返回doStuff
或将其分配给另一个作用域中定义的变量等方式使doStuff
对外部可用。但是我想你希望doStuff
成为一种nothing
的方法,而不是其内部代码的一部分。不,我正在编写一个游戏,尽管我试图访问函数内部的函数哦,我知道你用的是对象编程。这是我能做的。谢谢兄弟。是的,所以我想用button切换游戏button onclick激活一个功能我还没有得到这里的所有其他代码,但这里有一个网站:@sushisawesome你的小提琴是空的,但这里有一些jQuery可以帮你切换
function nothing() {
var doStuff = function() {
alert("This worked!")
}
var yourButton = getYourButton();
attachClickListener(yourButton, doStuff);