我尝试使用下面的JS代码运行以下函数。我是JS初学者,我不知道为什么它不起作用。
f(x)= {x + 1,如果x <2;如果x> = 2,则为-2x + 7;}
function f(x) {
if (x<2) {
return x+1;
}
else if (x>=2) {
return -2x+7;
}
}
答案 0 :(得分:4)
您需要一个乘法运算符。
return -2 * x + 7;
// ^
答案 1 :(得分:2)
Javascript没有隐式乘法,这意味着2x
在语法上无效。
我也不喜欢您对else
条件如此明确的方式:这会导致程序控制陷入意外的地方 1 。也就是说,完全删除if (x>=2)
。
事实上,为什么不写
return x < 2 ? x + 1 : -2 * x + 7;
代替?
1 x
可能是浮点NaN
,在这种情况下 情况都不是真的,并且函数的返回值不是明确的。
答案 2 :(得分:2)
您错过了*
中的乘法运算符-2x+7
。它将是-2*x+7
,如下所示
function f(x) {
if (x<2) {
return x+1;
}
else if (x>=2) {
return -2*x+7;
}
}
console.log(f(3)); // returns 1
console.log(f(1)); // returns 2