Javascript 如何通过if/case语句使用一个函数调用另一个函数?

Javascript 如何通过if/case语句使用一个函数调用另一个函数?,javascript,if-statement,case-statement,function-call-operator,Javascript,If Statement,Case Statement,Function Call Operator,有人知道我是怎么打字的吗?因为我的编辑,而我似乎无法让它工作 number=5; switch (number) { case 5: box.onclick = function1; break; case 50: box.onclick = function2; break; } 我也尝试过在switch中这样做。不能使用保留的JavaScript字来声明变量 例如,尝试将var=5替换为myVar=5 var

有人知道我是怎么打字的吗?因为我的编辑,而我似乎无法让它工作

number=5;
switch (number) {
    case 5:
        box.onclick = function1;
        break;
    case 50:
        box.onclick = function2;
        break;
}

我也尝试过在switch中这样做。

不能使用保留的JavaScript字来声明变量

例如,尝试将var=5替换为myVar=5

var myVar = 5;

if (myVar ==5){
    box.onclick = function1;
}
if(myVar ==50){
    box.onclick = function2;
}
另外,请查看此参考:

var是用于创建变量的保留字。你不能把它当作名字。这是正确的语法:

var x = 5;

if (x == 5) {
    box.onclick = function1;
}

if (x == 50) {
    box.onclick = function2;
}
尝试不使用保留字var作为变量名:

var x=5;
    if (x==5){
        box.onclick = function1;
    }
    if(x==50){
        box.onclick = function2;
    }
使用此代码:

number=5;
switch (number) {
    case 5:
        box.onclick = function1;
        break;
    case 50:
        box.onclick = function2;
        break;
}

案例50永远不会被击中,因为您在进入开关块之前将数字设置为5。因此,box onclick永远不会等于function2。因此,当您单击该框时,function2将不会运行。这真的是您实际代码的准确表示,还是省略了重要信息的简化?

您是否实际使用了名为var的var?var-generic作为我的变量名,我不想透露我的工作内容。为了清楚起见,您最好将其称为其他名称,因为现在这是你的代码样本中最明显的问题,你所有的答案都是关于什么的。正如你所有的答案都指出的,var是一个非常糟糕的占位符名称,因为它是JavaScript中的一个关键字。选择x,选择y,这不重要,只是关键字变量不重要。所以你的意思是,当你将数字设置为50时,单击该框不会导致调用function2?哦,分心。谢谢实际上函数1是50,函数2是5。好的,但开关代码是在数字更改后重新运行,还是在启动时只运行一次?必须重新运行开关代码,才能将box.onclick设置为function2。我知道当您单击按钮时,函数将停止。因此,如果您将此注释添加到问题描述中,将对其他回答者有很大帮助。甚至可能会显示一个简化的函数1和函数2,显示它们是如何修改数字的。我知道这两个函数是独立工作的,并且是一起工作的,但我试图在它们到达点a或点B时将它们写入停止状态,比如说函数1将数字设置为50,函数2将数字设置为5。