此次主要计算的是js中一万次遍历所需要的时间
思路其实很简单,在循环开始前记录开始时间,循环结束后记录时间,将两个时间相减就是可以得到时间了
话不多说,先上代码,基本上我已经完成注释了
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
</style>
<script type="text/javascript">
var t1,t2 ,htime,sum=0;//定义t1 t2 htime 的变量 sum初始为0
t1 = new Date();//创建一个不带参数的DATe对象
document.write("循环的时间是:"+t1.toLocaleString()+":"+t1.getMilliseconds()+"<br/>");//打印数据 tolocalestring返回值不包括毫秒,所以需要用到getmilliseconds()
for(var i = 1;i<=10000;i++){
sum+=i;
}
t2 = new Date();
document.write("循环后的时间是:"+t2.toLocaleDateString()+":"+t2.getMilliseconds()+"<br>/");
htime= t2.getTime()-t1.getTime();//两次毫秒相减
document.write("执行10000次循环用时"+htime+"毫秒")
</script>
</head>
<body>
<script src="jquery-3.6.0.js"></script>
<script type="text/javascript">
var mydate = new Date();
</script>
</body>
</html>
大家不用在意为什么要用上jq,jq我只是顺手加上去了,方便后续的选择器筛选,但在这里是完全用不上的,请大家放心
这就是运行的时长,可以看到一万次循环用时是1或者0毫秒,至少我都计算机处理效率还是可以的 计算的是1到10000的相加
注意:两个Date对象变量的getTimeout()方法的返回值相减,其效果相当于求两个时间间隔的毫秒数
方法 toLocalSString()返回的时间字符串不包括毫秒数所以才需要用到返回毫秒数的办法
切记返回的数值是字符串