【前端问题精选】js中存在大量的if else 而且这些if else之间关系不大,该如何优化代码?
代码有三千多行,有很多if else 每次做个版本判断都小心翼翼还容易出错,有什么优化的思路和方法?代码无法复制出来智能拍照了
回答:
换个思路呢?
let isNewIos = ()=>!this.isDev && !['weixin','other'].contains(getApp());let isWeiXin = ()=>!this.isDev && getApp() === "weixin";
let isBrowser = () => !this.isDev && getApp() === "other";
回答:
可以这样
const Arr [ {
match: () => a > b,
active: () => do something
},
{
match: () => a === b,
active: () => do something
},
{
match: () => a < b,
active: () => do something
}
]
Arr.map(item => {
item.match() && item.active()
})
我一般条件多了就这样去实现,类似这样思路。
或者前不久还看到了一篇文章,里面有更多的比较好的想法,可以尝试下。
JavaScript 复杂判断的更优雅写法
回答:
把条件和处理方法放到map里
回答:
if(x) { this.a = y;
} else {
this.a = z;
}
这种形式的if语句要不要考虑换成三目运算符?
return x ? y : z;
当然调用这些函数的地方也得修改了
回答:
我感觉代码需要重构,单纯的在这个基础上简化意义不大
以上是 【前端问题精选】js中存在大量的if else 而且这些if else之间关系不大,该如何优化代码? 的全部内容, 来源链接: utcz.com/a/133212.html