如果我有这样的功能:如何编程一个函数的输出以输入另一个函数的输入?
var danger = 1;
function stepLeft() {
if (danger == 1) {
alert("stop")
} else {
alert("start")
}
}
...我怎么做“警报(”停止“)”或任何其他输出这样的触发,并提供表达输入的东西就像一个开关声明?那么我可以引发一系列后果的连锁反应?谢谢!
如果我有这样的功能:如何编程一个函数的输出以输入另一个函数的输入?
var danger = 1;
function stepLeft() {
if (danger == 1) {
alert("stop")
} else {
alert("start")
}
}
...我怎么做“警报(”停止“)”或任何其他输出这样的触发,并提供表达输入的东西就像一个开关声明?那么我可以引发一系列后果的连锁反应?谢谢!
你在这里混合关注。一个alert()
是一个UI动作,它不会在你的代码中触发任何东西。它只是在UI上做了一些事情。如果你希望你的函数触发别的东西在你的代码,你需要调用其他的事情:
function stepLeft() {
if (danger == 1) {
alert("stop")
someOtherFunction();
} else {
alert("start")
yetAnotherFunction();
}
}
或者,如果功能可以改变,你可以提供一个功能stepLeft
:
function stepLeft(stopFunction, startFunction) {
if (danger == 1) {
alert("stop")
stopFunction();
} else {
alert("start")
startFunction();
}
}
,并称之为:
stepLeft(someOtherFunction, yetAnotherFunction);
或者你可能有stepLeft
返回一个值,等功能可以使用:
function stepLeft() {
if (danger == 1) {
alert("stop")
return "stop";
} else {
alert("start")
return "start";
}
}
,并称之为:
var actionPerformed = stepLeft();
someOtherFunction(actionPerformed);
这实际上是从你的逻辑中解耦你的UI操作的好机会:
function stepLeft() {
if (danger == 1) {
return "stop";
} else {
return "start";
}
}
和:
var actionPerformed = stepLeft();
alert(actionPerformed);
someOtherFunction(actionPerformed);
问题是,有很多方法来构造你的代码,这样一个func的结果可以由另一个功能使用。
我相信你正在寻找*提示*? - https://developer.mozilla.org/pt-BR/docs/Web/API/window.prompt – LcSalazar 2014-09-18 19:54:20