之前整理过关于多条件判断的方法:switch case和else if多匹配优化建议,发现不经常使用,也不容易记,今天又逛掘金发现了另一种方法,for循环遍历数组。

javascript 多if条件和switch case优化二-QUI-Notes

用法如下:

let n = 2
function aa(){
	const arr=[
		{key:0,values:'大米'},
		{key:1,values:'小米'},
		{key:2,values:'红米'},
		{key:3,values:'薏米'},
		{key:4,values:'糯米'}
	];
	for(let i = 0;i<arr.length;i++){
		const item = arr[i]
		if(n == item.key){
			return item.values;
		}
	}
}
console.log(aa())

这种方法的关键是通过数组的key去匹配val的值,还可以用来判断当前是什么浏览器:

function getBrowser(){
    const str = navigator.userAgent;
    const list = [
        {key: 'QQBrowser', browser: 'qq'},
        {key: 'Chrome', browser: 'chrome'},
        {key: 'Safari', browser: 'safari'},
        {key: 'Firefox', browser: 'firefox'},
        {key: 'Opera', browser: 'opera'},
        {key: 'msie', browser: 'ie'},
    ];
    for (let i = 0; i < list.length; i++) {
        const item = list[i];
        if (str.includes(item.key)) {return item.browser};
    }
    return 'other';
}
console.log(getBrowser())

下次遇到多条件就可以这样做了,真方便,再也不怕条件多了。