如何提高JavaScript代码的执行速度

问题描述

我是JS新手,所以有几个问题。

  1. 在JS中,我们如何计算代码/代码块的内存消耗以及哪个块花费时间。任何文章/博客都会有很大帮助。
  2. 以下代码成功执行,但超过了执行时间。我如何减少代码的执行时间。任何提示都会有所帮助。

问题陈述:给定范围L到T。找到所有数字都是K的倍数的数字。

代码输入:
第一行包含测试用例的数量
下一行包含整数。 (L T K)

5
5 10 5
20 40 2
300 600 3


process.stdin.resume();
process.stdin.setEncoding("utf-8");
var stdin_input = "";

process.stdin.on("data",function (input) {
    stdin_input += input;                               // Reading input from STDIN
});

process.stdin.on("end",function () {
   main(stdin_input);
});

function main(input) {
    // process.stdout.write("Hi," + input + ".\n");       // Writing output to STDOUT
    input = input.split('\n');
    // console.log(input);
    let T = parseInt(input[0])+1;
    for(var i=1;i<T;i++){
        let d=input[i].split(' ');
    calc(parseInt( d[0]),parseInt( d[1]),parseInt( d[2]));
    }
}

function calc(T,L,k){
    ar=[];
    for(let i = T;i<=L;i++){
        if((i>0 && i<10)&& (i%k==0) ){
            ar.push(i);
        } else {
           splitNumber(i,k) ? ar.push(i):''; 
        }
    }
    console.log(ar.length);
}

function splitNumber(num,k)
{
    let bool=false;
     num= splitToDigit(num);
    for(let i =0;i<num.length;i++){
        if(num[i]%k == 0 ){
            bool=true;
        } else{ return false; }
    }
    return bool;
}

function splitToDigit(n){
  return [...n + ''].map(Number);
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)