加快javascript运行时间

Speed up javascript run time

本文关键字:运行时间 javascript 加快      更新时间:2023-09-26

虽然我已经回顾了之前的几篇文章,但我的菜鸟能力对加速以下代码执行的解决方案一无所知。有数百个k,而每个k有(数万)个i,并且nearSum()有一个循环来计算testStr。

这个代码是缓慢和超时Chrome -我如何提高执行?在你问之前,任何代码的唯一原因都是"因为它是有效的"。nn的值是全局变量。

Function()…
resArrLen = resultArray[k].length;
for (i=0;i<resArrLen;i++)
{
testStr = resultArray[k][i].toString();
resultArray[k][i] = testStr + "'" + nearSum(testStr);
}//end for i
…
function nearSum(seqFrag)
{
var i=0;
var ninj=0;
var seqFragLen=0;
var calcVal=0;
var nn="";
//sum values
seqFragLen = seqFrag.length;
for (i=0; i+1<seqFragLen; i++)
{
nn = seqFrag.substr(i,2);  //gets value
ninj = eval(nn);
calcVal = calcVal.valueOf() + ninj.valueOf();
} //end for i
return calcVal.toFixed(2);
} //end nearSum

首先,您似乎正在使用'eval'将字符串转换为数字。这不是它的本意。请使用'Number(nn)'或'parseInt(nn)'。

否则,代码是不完整的,并且没有示例数据,很难优化。