js实现计算某段代码的运行时间

1、使用数组的方法

 var obj = {
    list: [],
    ids: 0,
    start: function () {
        this.ids++;
        var _time = new Date().getTime();
        this.list.push({ id: this.ids, time: _time });
        return this.ids;
    },
    end: function (id) {
        var arr=this.list.filter(function(item,index,arr){
            if(item.id===id){
                arr.splice(index,1);
                return true
            }
            return false;
        });
        console.log(arr);
        if(arr.length===0){
            console.log("错误id");
            return;
        }
        var time=new Date().getTime()-arr[0].time;
        return time;
    }
}


 var id=obj.start();
   
 for (var i = 0; i < 10000000; i++) {

 }
 var id1=obj.start();
 for (var j = 0; j < 10000000; j++) {

 }
 console.log(obj.end(id1));
 console.log(obj.end(id));

2、使用对象的方法

 var obj = {
    data:{},
    ids: 0,
    start: function () {
        this.ids++;
        this.data[this.ids]=new Date().getTime();
        return this.ids;
    },
    end: function (id) {
       var item=this.data[id];
       if(item===undefined){
           console.log("id错误");
           return;
       }
       delete this.data[id];
       return new Date().getTime()-item;
    }
}


 var id=obj.start();
   
 for (var i = 0; i < 10000000; i++) {

 }
 var id1=obj.start();
 for (var j = 0; j < 10000000; j++) {

 }
 console.log(obj.end(id1));
 console.log(obj.end(id));
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胡萝卜大王驾到通通闪开

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值