【前端问题精选】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

回到顶部