me_*_*jay 1 javascript operators
我试图用变量替换一些数学运算符,以便我可以根据某些条件更改运算符,然后使用该变量代替运算符.
例如
var abc = 5;
if (abc<5)
// perform subtraction;
else if(abc==5)
// perform addition;
else if(abc>5)
// perform multiplication
Run Code Online (Sandbox Code Playgroud)
现在我想要的是,基于变量abc的值执行操作而不是将操作符自动赋给某个变量,然后使用变量代替运算符,这样我可以减少一些代码,只有一个代码块可以用于代替3或5个街区.像这样的东西
var sign;
var result;
if(some condition)
sign = "-";
result = 5 sign 4;
Run Code Online (Sandbox Code Playgroud)
我想主要在javascript中这样做.
Wil*_*eer 11
使用您想要执行的操作符重构几个操作到不同的函数,然后您可以传递不同的函数,具体取决于您想要做什么(策略模式)
工作实例:
function multiply(a, b) {
return a * b;
}
function substract(a, b) {
return a - b;
}
function add(a, b) {
return a + b;
}
var sign;
var result;
var abc = 10;
if( abc < 5 ) {
sign = substract;
}else if( abc == 5 ) {
sign = add;
}else if( abc > 5 ) {
sign = multiply;
}
result = sign(5, 4);
Run Code Online (Sandbox Code Playgroud)