这是在javascript中调用函数的正确方法吗?
这是我文件的一部分:这是在javascript中调用函数的正确方法吗?,javascript,if-statement,Javascript,If Statement,这是我文件的一部分: function MyFunction() { var x="" if (x=1) { OnBtnPbDemo_SwitchChn1(1); //This is a function } else { OnBtnPbDemo_SwitchChn1(0); //This is another function } } 我想知道这是否是调用条件内函数的正确方法。 非常感谢。是的,无论您在哪里调用函数,调用函数都
function MyFunction() {
var x=""
if (x=1) {
OnBtnPbDemo_SwitchChn1(1); //This is a function
} else {
OnBtnPbDemo_SwitchChn1(0); //This is another function
}
}
我想知道这是否是调用条件内函数的正确方法。非常感谢。是的,无论您在哪里调用函数,调用函数都是一样的。您需要在
if
条件中使用=
,而不是使用=
if (x==1) {
而不是
if (x=1) {
如果要为不同的x
值调用相同的函数,请尝试以下操作
function MyFunction() {
var x = 1;
OnBtnPbDemo_SwitchChn1(x); //you can pass the x value directly to that function.
}
function MyFunction() {
var x="";
if (x==1) {
OnBtnPbDemo_SwitchChn1(1); //This is a function
} else {
OnBtnPbDemo_SwitchChn1_another(0); //This is another function
}
}
如果要为不同的x
值调用不同的函数,请尝试以下操作
function MyFunction() {
var x = 1;
OnBtnPbDemo_SwitchChn1(x); //you can pass the x value directly to that function.
}
function MyFunction() {
var x="";
if (x==1) {
OnBtnPbDemo_SwitchChn1(1); //This is a function
} else {
OnBtnPbDemo_SwitchChn1_another(0); //This is another function
}
}
不完全确定“正确”的调用方式是什么意思,但只要函数在作用域中可用,就可以在任何地方调用函数 实际上,您也可以缩短您为此编写的内容:
function MyFunction () {
var x = "";
OnBtnPbDemo_SwitchChn1(x === 1 ? 1 : 0);
}
除非您实际更改了函数中的
x
变量,否则它永远不会以1
作为参数运行。您要调用同一个函数两次,而只需调用一次值为1/0的函数
function MyFunction() {
//Check and find value of x
if(x=="somevalue") //true condition
{
x=1;
}
else{
x=0;
}
OnBtnPbDemo_SwitchChn1(x);
}
在外部条件和内部条件之间调用函数没有区别。但是,您的代码还有几个其他问题:1)您正在将
1
分配给x
,而没有将x
与1
进行比较。2) x
将永远不会是1
,因为您为其分配了一个空字符串。假设您实际上从其他地方获得了x
,您可以省略整个if
语句,并使用条件运算符:OnBtnPbDemo_switchn1(x==1?1:0)
@Ilan:你是对的,这没有意义,但是你不能仅仅假设OP的代码是不同的。你可能已经把OP的问题删掉了!您只调用一个函数,根据条件函数的结果,参数是不同的。@FelixKling OK,这是一个注释,不是答案。我知道你还不能发表评论,但还是试着给出正确的答案。发表评论的权利很快就会到来!答案应包含代码和解释。超过最小字符数的加长“是”并不能将其删除。(加上OP的代码中至少有三个问题需要指出。)这是一个注释,不是问题的答案。@Ash Burlaczenko这是错误之一,OP需要更改。主要问题没有回答yetFYI,您的代码有语法错误,格式不符合常规。