【问题标题】:loop with modulus % JS带模数 % JS 的循环
【发布时间】:2018-03-17 00:06:19
【问题描述】:

是否有一种更易读或更正确的方式通过循环来构建一个在新行之前最多包含 5 个元素的表格。 我使用模数运算符,但我确信它具有更易读或优化的方式。

所以我需要做一个循环,并且每次"i" 可以除以5跳转一个新的行。 你有更多建议还是我的代码很完美?

function refreshLibs() {
    let list = sheet_selected==="all" && $PME.libraryObj || _sortSheetType($PME.libraryObj);
    list = cat_selected==="all" && list || _sortCategory(list);

    for (let [i,len,x,y,m,l] = [0,list.length,0,0,50,1]; i < len; i++) { // m:marge l:line
        const cage = list[i];
        [cage.x,cage.y] = [x,y];
        if( !((i+1)%6) ){ [x,y,l] = [0,y+cage.height+20,++l] } // this can be optimize ???
        else{x+=cage.width+m;};
        cage_library.addChild(cage);
    };
};

【问题讨论】:

    标签: javascript loops ecmascript-6 operators modulus


    【解决方案1】:

    哇,找个数学实验,给我跳循环线的神奇代码!

        for (let i=x=y=l= 0, len = list.length; i < len; i++) {
            const cage = new PIXI.Container();
            const cage_Bg = drawRec(0, 0, 170, 122);
            cage_Bg.x = x+150, cage_Bg.y = y;
            cage.addChild(cage_Bg);
            Cage_Libs.addChild(cage);
            x+=cage_Bg.width+marX;
    
            if(!(~i%~4)){ // MAGICCCCCS JUMP EACH 4*(I) and loop and loop allow start at 0
             x=0,y+=marX;
            }
        };
    

    【讨论】:

      猜你喜欢
      • 2022-01-18
      • 2014-04-09
      • 1970-01-01
      • 2020-04-17
      • 1970-01-01
      • 2023-04-10
      • 1970-01-01
      • 2019-02-14
      • 2019-04-06
      相关资源
      最近更新 更多