最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
innerHTML=
时间:2014-11-03 编辑:简简单单 来源:一聚教程网
用js在清空一个DOM元素时会发生什么
我的浏览器环境是Chrome 23,Firefox 17,IE9
我的作法,在body中创建1000个p标签
代码如下 | 复制代码 |
for(var i=0;i<10000;i++){ var p=document.createElement("p"); p.innerHTML="1"; document.body.appendChild(p); } var p=document.getElementsByTagName("p"); |
测试一
测试innerHTML的写法是
代码如下 | 复制代码 |
for(var i=0;i<10000;i++){ var p=document.createElement("p"); p.innerHTML="1"; document.body.appendChild(p); } var p=document.getElementsByTagName("p"); var d=new Date(); for(var k=0;k<10000;k++){ p[k].innerHTML=""; } console.log(new Date()-d); |
与之对应的removeChild作法是
代码如下 | 复制代码 |
for(var i=0;i<10000;i++){ var p=document.createElement("p"); p.innerHTML="1"; document.body.appendChild(p); } var p=document.getElementsByTagName("p"); var d=new Date(); for(var k=0;k<10000;k++){ p[k].removeChild(p[k].firstChild); } console.log(new Date()-d); |
好了,开始测试!
浏览器 | Chrome | Firefox | IE |
---|---|---|---|
innerHTML | 1015-1104 | 35-38 | 6500-7134 |
removeChild | 893-987 | 25-28 | 6206-7000 |
从测试结果看,如果向这一万个P中清空唯一的子元素,那么,所有的浏览器,removeChild都要略快一些。Firefox的效率真是出人意料!
测试二,直接清空body
测试innerHTML的写法是
代码如下 | 复制代码 |
for(var i=0;i<10000;i++){ var p=document.createElement("p"); p.innerHTML="1"; document.body.appendChild(p); } var d=new Date(); document.body.innerHTML=""; console.log(new Date()-d); |
与之对应的removeChild作法是
代码如下 | 复制代码 |
for(var i=0;i<10000;i++){ var p=document.createElement("p"); p.innerHTML="1"; document.body.appendChild(p); } var p=[].slice.call(document.getElementsByTagName("p")); var d=new Date(); for(var i=0;i<10000;i++){ document.body.removeChild(p[i]); } console.log(new Date()-d); |
好了,开始测试!
浏览器 | Chrome | Firefox | IE |
---|---|---|---|
innerHTML | 3-4 | 26-27 | 1459-1518 |
removeChild | 6-8 | 35-37 | 232-251 |
从测试结果看,如果直接清空body,firefox和chrome下,removeChild都要稍微慢一些,不过IE却快很多
总结,在IE下,removeChild比innerHTML=""有效,chrome和firefox下,效率差不多
相关文章
- HTML简单购物数量小程序代码展示 10-31
- html canvas实现弹幕功能 10-31
- HTML中空格表示的意义 10-31
- html area标签解读 10-31
- html使用表单标签实现注册页面代码展示 10-31
- 使用HTML截图并保存为本地图片的代码展示 10-31