请优化下面的代码,并说明理由: jumpToLogin(sysTypeId,next) { let hash = window.location.hash let isHasInvatation = hash.indexOf('InvitationCode')!=-1 ? true: false switch(sysTypeId){ case 1: next({path: '/adminlogin'}); break; case 2: next({path: '/checklogin'}); break; case 3: next({path: '/processlogin'}); break; default: // 判断链接中是否有邀请码,有则导航至邀请链接,否则导航至主页。 if(!isHasInvatation) { next({path: '/home'}); } else { let url = hash.slice(hash.indexOf('?') - 1) next({path : url}) } break; } }
时间: 2023-02-19 08:14:50 浏览: 320
可以优化的代码如下:jumpToLogin(sysTypeId, next) { let hash = window.location.hash; let isHasInvatation = hash.includes('InvitationCode'); switch (sysTypeId) { case 1: next({ path: '/adminlogin' }); break; case 2: next({ path: '/checklogin' }); break; case 3: next({ path: '/processlogin' }); break; default: // 判断链接中是否有邀请码,有则导航至邀请链接,否则导航至主页。 if (isHasInvatation) { let url = hash.slice(hash.indexOf('?') - 1); next({ path: url }); } else { next({ path: '/home' }); } break; } }
优化的理由是:使用includes()函数替换indexOf()函数,以提高代码的效率;把导航至邀请链接的判断放在导航至主页的判断之前,以提高代码的可读性。
阅读全文