JavaScript优化一直是我们前端开发中非常重要的工作,也是很多开发者做不好的部分内容。今天总结了10个优化问题,大家可以参考优化,很多问题都是大家经常遇到的。==和===的区别应该避免在if和while条件选择语句的条件判断部分赋值,比如if(a=b),应该写成if(a==b),但是在case中ofequality接下来,最好使用同余运算符,即使用===和!==运算符来比较==和!=会更好。因为==和!=运算符会进行强制类型转换,不要使用rawsyntax,不要使用rawsyntax,写一些容易混淆的代码,虽然在java训练中计算机可以正常识别和运行,但是代码是难以理解后期维护函数返回统一类型很不方便。JavaScript虽然是弱类型,在函数中,前面返回整型数据,后面返回布尔值也可以正常编译运行,但是为了标准化和后期维护,应该保证函数返回的是Uniform数据types总是检查数据类型来检查你的方法传入的参数,一方面是为了安全,另一方面是为了可用性。用户随时可能误用和传入错误的数据。这不是他们的问题,而是他们的思维方式和使用习惯跟你不一样。所以你可以使用typeof方法来帮助你检测函数接受的参数是否合法。什么时候用单引号什么时候用双引号在JavaScript中,虽然双引号和单引号都可以用来表示字符串,但是为了避免混淆,所以我们推荐在HTML中使用双引号,在JavaScript中使用单引号。但是,为了兼容各种浏览器,避免解析错误,在定义JSON对象时,最好使用双引号来删除DOM节点。在删除DOM节点之前,记得删除这个节点上注册的事件,无论是在observe模式还是使用attachEvent方法注册事件,否则会有无法回收的内存。另外,在removeChild和innerHTML=''之间,尽量选择第二个。因为在sIEve(内存泄漏监控工具)中监控的结果是使用removeChild不能有效释放DOM节点。多种类型在JavaScript中声明所有变量都可以使用单个var语句来声明,这是一个组合语句,可以减少整个脚本的执行时间。插入一个迭代器,例如varname=values[i];我++;这两条语句可以写成varname=values[i++]浮点数转换成整数。许多人经常喜欢使用parseInt()来转换成整数。事实上,parseInt()用于将字符串转换为整数,而不是浮点数和整数之间的转换。浮点数转换我们应该使用Math.floor()或Math.round()来避免双重解释为了提高代码性能,尽量避免需要根据JavaScript进行解释的字符串,即1.使用eval函数作为尽可能少使用eval,相当于在运行时调用解释引擎再次运行内容,耗费大量时间。同时,使用Eval带来的安全问题也不容忽视。2.不要使用Function构造函数,不要将字符串参数传递给setTimeout或setInterval最后,我建议你永远不要忽视代码优化工作。重构是一项从项目开始到结束的连续性工作。只有不断的代码优化,才能让代码的执行效率越来越好。原作者:WEB前端老李
