请问这个js用for循环后就变慢了,不用for循环一个一个写,控件下拉就很快.

for(var u = 1; u <= 33; u++) {
    if(s.indexOf(FR.remoteEvaluate('=INDEXOFARRAY(split(TABLEDATAFIELDS("自选字段"),","),' + u + ')')) >= 0) {
        i++;
        window["t" + u].setVisible(true);
        window["l" + u].setVisible(true);
        var t = "TEXT" + u;
        var r = "LABEL" + u;
        $("[widgetname='" + t + "']").css("left", (200 + 300 * ((i - 1) % 3)));
        $("[widgetname='" + t + "']").css("top", (90 + 40 * (Math.ceil(i / 3) - 1)));
        $("[widgetname='" + r + "']").css("left", (56 + 300 * ((i - 1) % 3)));
        $("[widgetname='" + r + "']").css("top", (90 + 40 * (Math.ceil(i / 3) - 1)));
    } else {
        window["t" + u].setVisible(false);
        window["l" + u].setVisible(false);
        window["t" + u].reset();
    }
}

不用for循环写法

if(s.indexOf(FR.remoteEvaluate('=INDEXOFARRAY(split(TABLEDATAFIELDS("自选字段"),","),1)')) >= 0) {
    i++;
    t1.setVisible(true);
    l1.setVisible(true);
    $("[widgetname='TEXT1']").css("left", (200 + 300 * ((i - 1) % 3)));
    $("[widgetname='TEXT1']").css("top", (90 + 40 * (Math.ceil(i / 3) - 1)));
    $("[widgetname='LABEL1']").css("left", (56 + 300 * ((i - 1) % 3)));
    $("[widgetname='LABEL1']").css("top", (90 + 40 * (Math.ceil(i / 3) - 1)));
} else {
    t1.setVisible(false);
    l1.setVisible(false);
    t1.reset();
}

if(s.indexOf(FR.remoteEvaluate('=INDEXOFARRAY(split(TABLEDATAFIELDS("自选字段"),","),2)')) >= 0) {
    i++;
    t2.setVisible(true);
    l2.setVisible(true);
    $("[widgetname='TEXT2']").css("left", (200 + 300 * ((i - 1) % 3)));
    $("[widgetname='TEXT2']").css("top", (90 + 40 * (Math.ceil(i / 3) - 1)));
    $("[widgetname='LABEL2']").css("left", (56 + 300 * ((i - 1) % 3)));
    $("[widgetname='LABEL2']").css("top", (90 + 40 * (Math.ceil(i / 3) - 1)));
} else {
    t2.setVisible(false);
    l2.setVisible(false);
    t2.reset();
}
..........

请问是啥问题啊 js如何优化啊
编辑于 2018-8-10 16:52  
编辑于 2018-8-10 16:53  
编辑于 2018-8-10 17:02  
编辑于 2018-8-10 17:02  
FineReport就玩一小会 发布于 2018-8-10 16:49
回答问题
悬赏:2 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
就玩一小会发布于2019-12-5 19:26(编辑于 2023-9-6 09:34)
555
  • 传说哥 传说哥 警告3次,恶意刷采纳会面临严重处罚。请参考问答首页公告区的相关说明和规范
    回复
    2019-12-05 19:49 
  • 1关注人数
  • 578浏览人数
  • 最后回答于:2019-12-5 19:26
    活动推荐 更多
    热门课程 更多
    返回顶部