技术解析

if 条件判断放在哪里比较好?
0
2021-08-26 07:48:44
idczone
function fn(){
	if(type == 1){
    	fn2();
    }else{
    	fn3();
    }
}

我现在有个 fn 方法,执行的时候会根据 type 进行判断到底调用 fn2 和 fn3 哪一个方法,在调用这些方法之前,需要做一些判断,判断这个方法需要的值是否为空之类的,有些判断是相同的,是放在工共的 fn 中比较好,还是这些判断在 fn2 和 fn3 中都写一次比较好

function fn(){
	// if(a == ''){
    // 
    // }
	if(type == 1){
    	fn2();
    }else{
    	fn3();
    }
}

看你 type 侧重点,如果 type 比较重要:先用 type 来区分执行 f2 还是 f3,f2,f3 里面放公共 fn ;否则的话现有的就可以

function fn() {
if (!a) {
if (type == 1) fn1();
else fn2();
}
}

公共的吧,然后闭包返回。

不知道其它地方用到 fn2 fn3 没,个人倾向只在 fn 中做根据 type 属性调用哪个函数的判断(后面也许需要有根据更多 type 属性值调用其它的方法 可以使用 switch),函数执行需要的变量只在自身作用域中做判断逻辑处理,低耦合

一个函数自己要用到的参数自己去判断,干嘛让别的函数帮你做呢

1. 尽量避免写重复的代码;
2. 错误优先执行;
3. 少写面条代码,该拆就拆。
```javascript
function fn() {
if(isChecked()){
}
}

```

1. 尽量避免写重复的代码;
2. 错误优先执行;
3. 少写面条代码,该拆就拆。
```
function fn(type) {
if(isChecked()) {
return type == 1 ? fn1() : fn2();
}
}
```

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服