javascript中应该避免不必要的重复
以下列出一些看起来浅易却在实际开发中容易犯到的错误。
错误1、重复地查询元素
这点大家都知道,但会不经意地犯错。通常对一个元素进行两处操作,特别是这两处代码都分开来写时,很容易造成两次查询该元素。
//错误的做法,两次查询,会降低了效率 //第一次操作 $('.dom').show(); //第二次操作 $('.dom').hide(); //建议的做法 //用变量引用该查询 $dom = $('.dom'); //第一次操作 $dom.show(); //第二次操作 $dom.hide();
错误2、重复的条件判断
每次执行函数都会进行了一次if...else...判断,效率明显不好,不是说要避免这样做,但对一些函数体内进行的简易逻辑操作,我们大可以将他简化,以提高效率。
//不好的做法 var flag = true; var func = function () { if (flag) { alert(1); } else { alert(2); } } func(); //建议的做法 var flag = true; var func = flag ? function () {alert(1);} : function () {alert(2);} func();
错误3、重复的对象创建
我们应该要避免每次执行同一个方法都实例化某个对象。
//不好的做法 var func = function () { var dialog = new Dialog(); dialog.open(); } func(); //建议的做法 var dialog = new Dialog(); var func = function () { dialog.open(); } //容易被忽略的正则 //不好的做法 function cleanText(dirty) { clean = dirty.replace(/<script[^>]*>([\s\S]*?)<\/script>/gi, ""); return clean; } cleanText('<script>alert(1)</script>'); //建议的做法 var scriptRegex = /<script[^>]*>([\s\S]*?)<\/script>/gi; function cleanText(dirty) { clean = dirty.replace(scriptRegex, ""); return clean; }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步