javascript避免代码重复体验技能共享

javascript避免代码重复体验技能共享
我喜欢去一些大的网站浏览他们的原代码,希望找到一些模式,可以应用到自己的代码,或者找一些工具和技能,从来没有听说过的。但是,当我看着这些大型网站的源代码,我经常发现一个问题,那就是,重复代码的执行,并重复功能应用程序。这里有一些你会发现当你看他们的源代码的问题,与你分享。我希望您能更简洁高效地编写Javascript代码。
元素重复采集

最常见的问题,他们看我是Javascript代码元素的重复采集。尽管jQuery的选择器引擎或querySelectorAll的执行速度是很快的,重复性的工作是需要更多的时间和资源。这个问题很简单,解决方法如下:
复制代码代码如下所示:

Suoyuan(。项目)。AddClass(隐藏);
然后…
Suoyuan(。项目)。RemoveClass(隐藏);

/ /
var项目= $();
…从这里开始使用变量!

对编写重复代码的程序员的谴责是每天都要做的,但仍然需要加强。当然,有些重复的操作是不可避免的(比如Ajax加载页面),但是在这种情况下,我们最好使用事件代理而不是直接拉内容。
重复条件判断

重复的条件计算是常见的,但通常有一个共同的模式来避免它们:
复制代码代码如下所示:
无功performmiracle =函数(){()
如果浏览器支持某个特性…
如果(特征。剧情){

}
如果您不支持 /…
{其他

}
};

这是可行的,但不是最有效的代码,上面的条件可以多次计算。
复制代码代码如下所示:
无功performmiracle = features.somefeature函数(){
一个计划/计划
}函数(){
b计划
};

只有一个条件,当条件完成时,方法或变量作为结果返回。
重复创建对象

与重复操作相比,重复对象的创建更难找到,通常是在正则表达式上:
复制代码代码如下所示:
功能cleantext(脏){
删除脚本/标签
清洁= dirty.replace( / }×>({ 的 } * / GI),);

一些 / /做清洁,也许空白,等。

返回清洁;
}

上面的代码将重复创建一个新的(但相同的)正则表达式对象。在这种情况下,如果在函数之外创建这个对象,您将避免这种情况。
复制代码代码如下所示:
Var scriptRegex({ 的 } *) / GI = / } * >;
功能cleantext(脏){
去掉脚本标签
清洁= dirty.replace(scriptregex,);

一些 / /做清洁,也许空白,等。

返回清洁;
}

在上面的示例中,正则表达式对象只创建了一次,但多次使用,节省了大量CPU处理

这只是其他程序员经常遇到的重复问题的一个例子。你在这个领域有什么发现吗
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部