一段效率很高的for循环语句使用方法


Posted in Javascript onAugust 13, 2007

给表格的每行加上样式,注意for的第二个参数,当数组下标越界时,row=row[i]返回false,到此循环结束。

var rows = document.getElementsByTagName('tr');
for( var i = 0, row; row = rows[i]; i++ ) {
  row.className = 'newclass';
}
测试代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<style>
li { margin-left:28px;}
.abc {background-color:#eee;font-size:14px; margin-bottom:10px;}
</style>
<SCRIPT LANGUAGE="JavaScript">
<!--
function a(){
 var row = document.getElementsByTagName("li");
 var t1 = new Date();
 for (var i=0,j; j=row[i]; i++)
 {
  j.className="abc";
 }
 var t2 = new Date();
 alert("耗时 "+(t2-t1).toString()+" 毫秒");
}
function b(){
 var row = document.getElementsByTagName("li");
 var t1 = new Date();
 for (var i=0; i<row.length; i++)
 {
  row[i].className="abc";
 }
 var t2 = new Date();
 alert("耗时 "+(t2-t1).toString()+" 毫秒");
}
function c(){
 var j="<ol>";
 for (var i=0; i<2000; i++)
 {
  j=j+"<li>测试文字</li>";
 }
 j=j+"</ol>";
 document.getElementById("box").innerHTML = j;
}
//-->
</SCRIPT>
</head>
<BODY>
<input type="button" value="CreateTable" onclick="c()" />
<input type="button" value="Test old method!" onclick="b()" />
<input type="button" value="Test new method!" onclick="a()" />
<input type="button" value="Clear" onclick="document.getElementById('box').innerHTML='';" />
<div id="box"></div>
</BODY>
</HTML>

Javascript 相关文章推荐
关于JavaScript中原型继承中的一点思考
Jul 25 Javascript
在javaScript中关于submit和button的区别介绍
Oct 20 Javascript
JS连连看源码完美注释版(推荐)
Dec 09 Javascript
JQuery 图片滚动轮播示例代码
Mar 24 Javascript
javascript event在FF和IE的兼容传参心得(绝对好用)
Jul 10 Javascript
谈谈对offsetleft兼容性的理解
Nov 11 Javascript
JSON+Jquery省市区三级联动
Jan 13 Javascript
js中获取键盘按下键值event.keyCode、event.charCode和event.which的兼容性详解
Mar 15 Javascript
JS实现常见的查找、排序、去重算法示例
May 21 Javascript
javascript中call()、apply()的区别
Mar 21 Javascript
es6中比较有用的7个技巧小结
Jul 12 Javascript
基于redis的小程序登录实现方法流程分析
May 25 Javascript
javascript实现轮显新闻标题链接
Aug 13 #Javascript
document.open() 与 document.write()的区别
Aug 13 #Javascript
js小技巧--自动隐藏红叉叉
Aug 13 #Javascript
javascript据option的value值快速设定初始的selected选项
Aug 13 #Javascript
用js实现随机返回数组的一个元素
Aug 13 #Javascript
JavaScript 模仿vbs中的 DateAdd() 函数的代码
Aug 13 #Javascript
用JavaScript 处理 URL 的两个函数代码
Aug 13 #Javascript
You might like
数据库查询记录php 多行多列显示
2009/08/15 PHP
Yii框架页面渲染操作实例详解
2019/07/19 PHP
JavaScript 数组循环引起的思考
2010/01/01 Javascript
输入密码检测大写是否锁定js实现代码
2012/12/03 Javascript
js图片自动切换效果处理代码
2013/05/07 Javascript
JS加载iFrame出现空白问题的解决办法
2016/05/13 Javascript
Javascript中的arguments对象
2016/06/20 Javascript
浅谈jquery.form.js的ajaxSubmit和ajaxForm的使用
2016/09/09 Javascript
react-router JS 控制路由跳转实例
2017/06/15 Javascript
JS中精巧的自动柯里化实现方法
2017/12/12 Javascript
JavaScript寄生组合式继承实例详解
2018/01/06 Javascript
如何用input标签和jquery实现多图片的上传和回显功能
2018/05/16 jQuery
AngularJS自定义过滤器用法经典实例总结
2018/05/17 Javascript
vue-element-admin 菜单标签失效的解决方式
2019/11/12 Javascript
element-ui 实现响应式导航栏的示例代码
2020/05/08 Javascript
python刷投票的脚本实现代码
2014/11/08 Python
Python中使用socket发送HTTP请求数据接收不完整问题解决方法
2015/02/04 Python
简单介绍Python中的filter和lambda函数的使用
2015/04/07 Python
Python中最大递归深度值的探讨
2019/03/05 Python
Python实现蒙特卡洛算法小实验过程详解
2019/07/12 Python
Python占用的内存优化教程
2019/07/28 Python
HTML5中使用json对象的实例代码
2018/09/10 HTML / CSS
匈牙利墨盒和碳粉购买网站:CDRmarket
2018/04/14 全球购物
与C++相比,Java中的数组有什么不同
2014/03/25 面试题
职业女性的职业规划
2014/03/04 职场文书
聚美优品恶搞广告词
2014/03/14 职场文书
陈欧的广告词
2014/03/18 职场文书
机关会计岗位职责
2014/04/08 职场文书
诉讼财产保全担保书
2014/05/20 职场文书
英语三分钟演讲稿
2014/08/19 职场文书
八项规定自查自纠报告及整改措施
2014/10/26 职场文书
2015年个人审计工作总结
2015/04/07 职场文书
婚宴致辞
2015/07/28 职场文书
乡镇干部学习心得体会
2016/01/23 职场文书
初中化学教学反思
2016/02/22 职场文书
2016年小学感恩节活动总结
2016/04/01 职场文书