javascript - js中字面量的多层级写法对效率有什么影响吗

查看:110
本文介绍了javascript - js中字面量的多层级写法对效率有什么影响吗的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

var templeFun = {
    nodataWarn: {
        stateHclass: '<p class="dataWa">暂无数据...</p>',
        stateNclass: '<p style="text-align:center;line-height: 50px;border: 5px solid #f3f3f3;">暂无数据...</p>',
        curSubid: $('.historySub .curth').attr('type_val')
    },
    //        分页初始页
    paPage: {
        notepage: 1,
        numPage: {
                $at: 4,
                $ad: {
                    $type: function(){
                    }
                }
            }
    }

}
就比如上面的代码,如果这种写法层数多了的话,这种访问:templeFun.paPage.numPage.$ad.$type(),对性能上或是效率上有什么影响吗

解决方案

性能应该没太大影响,效率还要看你具体的数据处理,可以用chrome的console.time看代码执行的时间;

console.time('run');
var templeFun = {
    nodataWarn: {
        stateHclass: '<p class="dataWa">暂无数据...</p>',
        stateNclass: '<p style="text-align:center;line-height: 50px;border: 5px solid #f3f3f3;">暂无数据...</p>',
        // curSubid: $('.historySub .curth').attr('type_val')
    },
    //        分页初始页
    paPage: {
        notepage: 1,
        numPage: {
            $at: 4,
            $ad: {
                $type: function() {
                    return templeFun.paPage.numPage.$at++;
                }
            }
        }
    }
}
var value;
for (var i = 0; i < 100000; i++)
    value = templeFun.paPage.numPage.$ad.$type()
console.log(value);
console.timeEnd('run');

查询20万次执行时间:
run: 5.230ms
----------------------------------------
我把$type函数改成打印数据,其他不变:
$type: function() {
    console.log(templeFun.paPage.numPage.$at++)
    return 0;
}
执行时间是:

run: 5463.301ms

所以单纯查询并不怎么影响性能和效率,你的代码逻辑处理对效率有影响

这篇关于javascript - js中字面量的多层级写法对效率有什么影响吗的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆