影响js性能几种情况

文章列举了影响JavaScript性能的多种情况,包括避免使用for...in循环,减少对象和函数的重复创建,正确判断对象属性,慎用根据name获取元素,以及优化字符串操作和DOM交互。建议使用for循环,利用prototype添加方法,避免在非函数块声明函数,减少DOM操作,以及使用对象参数来提升性能。
摘要由CSDN通过智能技术生成

一.影响js性能

1.for循环

for()语句性能优于for(…in…)语句

2.重复创建

避免重复创建函数,避免使用闭包。推荐使用prototype追加方法

3.判断是否有方法

判断一个js对象是否支持某个属性或方法时使用if(typeof(person.attr)!=‘undefined’) ,考虑到当person.attr=null,0,false的情况

4.根据name获取span

在IE中根据name属性取得SPAN元素:w3c规范中getElementsByName是按着name属性进行检索的,而MS的IE却是按着id来检索,导致不能得到应该得到的Elements。可用getElementsByTagName后再getAttribute(“name”)判断。

5.字符串所占个数

得到字符串所占的字符个数: if (intCode>=0&&intCode<=128) { totallength=totallength+1;//非中文单个字符长度加 1}else{ totallength=totallength+2; //中文字符长度则加 2}

6.原始数据类型

原始类型(string,number,boolean,null,undefined):值; 复合类型(object,array,function):访问地址

7.使用{}创建对象

8.使用[]创建对象

使用[]创建数组,如果你不知道数组长度,使用Array#push。当你需要复制数组的时候,请使用Array#slice。

9.对于字符串,使用单引号’

10.字符串拼接

字符串拼接,可以使用Array#join。尤其是对IE浏览器。

11.不要再非函数块声明函数

绝对不要在非函数块(if,while)申明一个函数。可以把函数申明变成一个函数表达式 var test = function test(){…}

12.使用点

访问属性使用点(.)操作符, 当以变量的方式访问属性的时候,用下标符号([])。——除非特殊需求,否则尽量避免使用obj[variable]的方式进行属性访问。

13.var定义多个变量

使用一个var定义多个变量,每个变量在一个新行上,把不进行赋值的变量放置到最后

14.在选择时,最好以ID选择符作为开头

15.尽量少用选择符,而使用逗号

16.循环多次

在循环次数很多时避免使用$().each,而使用for循环

17.尽量减少对DOM的操作

18.参数是js对象

如果参数可以是JS对象,尽量使用对象:$(“div”).css({ “display”: “block”, “background-color”: “blue” });。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值