<html>
<head>
<meta charset="utf-8">
<title>循环填充数据</title>
<style type="text/css">
td{
width: 50px
height: 50px
}
</style>
</head>
<body>
<table border="1" cellspacing="0" cellpadding="0">
<tr><th colspan="6">数据表格</th></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td></td><td></td><td></td><td></td><td></td></tr>
</table>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
//模拟后台数据,数据量可变
var data = [{
message:"数据1"
},
{
message:"数据2"
},
{
message:"数据3"
},
{
message:"数据4"
},
{
message:"数据5"
},
{
message:"数据6"
},
{
message:"数据7"
},
{
message:"数据8"
},
{
message:"数据9"
},
{
message:"数据10"
}
]
var tdarr = $("td")//获取表格数量
var num1 = Math.floor(tdarr.length / data.length)//取商 表格数量除以后台数据数量
var num2 = tdarr.length % data.length//取余 表格数量除以后台数据数量
//console.log("num1:"+num1)
//console.log("num2:"+num2)
//将能整除的部分循环填充后台数据
for(var i=0i<num1i++){
$.each(data,function(index){
//console.log(index+i*data.length)
//console.log(data[index].message)
$(tdarr[index+i*data.length]).text(data[index].message)
})
}
//如果不能整除即取余不为0,则再循环补填未填充的表格
for(var i=0i<num2i++){
$(tdarr[data.length*num1+i]).text(data[i].message)
}
</script>
</body>
</html>
首先定义一个数组
const arr = [1,2,3,4,5,6]
第一种:for循环
for (let i = 0i<arr.lengthi++){
console.log(arr[i])
}
for(j=0,len=arr.lengthj<lenj++){}//这种方法基本上是所有循环遍历方法中性能最高的一种
第二种 for of (需要ES6支持) 性能要好于forin,但仍然比不上普通for循环
for (let value of arr){
console.log(value)
}
第三种 for in 它的效率是最低的
for (let i in arr){
console.log(arr[i])
}
第四种 foreach() 实际上性能比普通for循环弱
1、箭头函数写法
arr.forEach(value =>{
console.log(value)
})
2、普通函数写法
arr.forEach(function(value){
console.log(value)
})
第五种 entries()
for (let [index, value] of arr.entries()) {
console.log(value)
}
第六种 keys()
for (let inx of arr.keys()){
console.log(arr[inx])
}
第七种 reduce()
1、箭头函数
arr.reduce((pre,cur)=>{
console.log(cur)
})
2、普通函数
arr.reduce(function(pre,cur){
console.log(cur)
})
第八种 map() 但实际效率还比不上foreach
1、箭头函数
arr.map(value=>{
console.log(value)
})
2、普通函数
arr.map(function(value){
console.log(value)
})
第九种 values()
for (let value of arr.values()){
console.log(value)
}