2016-05-29 for循环几种应用

1. 天梯 

效果图:

    <style>
        div{width: 30px; height: 30px; border: 1px solid royalblue; background: red; position: absolute;top:0px; left: 0px;color: #fff}
    </style>
    <script>
        window.οnlοad=function(){
            var str ='';
            for(var i=0;i<11;i++){
                str+="<div>"+i+"</div>";
            }
            document.body.innerHTML=str;

            var divs=document.getElementsByTagName("div");
            len=divs.length;
            for(var i=0;i<len;i++){
                divs[i].style.left+=i*50+10+"px";//每个div左右间隔10px像素
                divs[i].style.top+=i*50+10+"px";//每个div上下间隔10px像素
            }
        }
    </script>
</head>
<body>
</body>
</html>

  

2.V字形  本质就是一个算法,当数字在一半+1的时候,数字增大值也增大, 超过一半的时候 数字增加值却变少6->130 7->100 8->70...

    <script>
        window.onload=function(){
            var str ='';
            for(var i=0;i<11;i++){
                str+="<div>"+i+"</div>";
            }
            document.body.innerHTML=str;

            var divs=document.getElementsByTagName("div");
            len=divs.length;
            var down=len%2==0?len/2:Math.ceil(len/2);
            var count=2;
            for(var i=0;i<len;i++){
                if(i<down){
                    divs[i].style.left+=i*30+10+"px";//每个div距离最左边有10px间距
                    divs[i].style.top+=i*30+10+"px";//每个div距离顶部有10px间距
                    alert( divs[i].style.top);
                }else if(i>=down &&i<len){
                    divs[i].style.left+=i*30+10+"px";
                    divs[i].style.top+=(i-count)*30+10+"px";//本质就是一个算法 数字增加值却变少6->130 7->100 8->70...
                    count+=2;
                }
            }
        }
    </script>

 3.嵌套for循环打印所有的元素

    <script>
        var arr=[
                [1,2,3,4,5],
                ["a","b","c","d","e","f"],
                [6,7,8,false,true],
        ];
        for(var i=0;i<arr.length;i++){
            for(var j=0;j<arr[i].length;j++){
                alert(arr[i][j])
            }
        }
    </script>

  

转载于:https://www.cnblogs.com/bravolove/p/5540881.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值