使用javascript的网速测试代码

使用javascript的网速测试代码:
Javascript 最简单检测网速的方法。网速很慢,但又得打开 Flash 是一件很痛苦的事情,特别是 Silverlight 来临之际,这个技术可能有点用。

在之前为了测试应用网速,实现了用java applet使用socket的测试方式,测试结果比较准确和稳定,且部署也较简单。但缺点是客户端必须安装JRE或JDK。今天用javascript脚本写了一个通过AJAX的下载一个大文件来计算速度的脚本,作为一个JAVA方式的补充。经过测试,同一台电脑不同的浏览器的速度测试结果也有不少的差距,也说明了脚本的执行与浏览器和HTTP服务器的影响有较大的关系。代码如下:

 

<html>
<head>
<title>在线网络应用速度测试</title>
    <script type="text/javascript" src="jquery.js"></script> 
    <script language="javascript" >     
        var data_file="jdk.zip";//要测试的数据文件
        var starttime=0;
        var endtime=0;        
        var size=0;//文件长度,由脚本使用HEAD自动计算
    </script>
    <script language="javascript" >     
        $(function(){         
            //提交查询:
            $("#test").click(function(){
                    $("#result").html("网速测试中...");                
                endtime=0;            
                url=data_file+"?"+starttime;              
                //获取文件的长度:
                var xhr=$.ajax({
                        type:"HEAD",
                        url:url,
                        success:function(msg){
                            size=xhr.getResponseHeader('Content-Length');                         
                            starttime=new Date().valueOf();
                            //开始GET数据:
                                $.get(url,function(data){
                                    endtime=new Date().valueOf();                 
                                    usetime=endtime-starttime;
                                    size_mb=size/(1024*1024);
                                    var result_text="测试完成,总测试数量"+size_mb.toFixed(2)+"MB,用时"+usetime+"毫秒。<br/>";
                                    var speed=size/(usetime/1000*1024*1024);
                                    result_text+="网络吞吐量:"+speed.toFixed(2)+"MB/秒<br/>";
                                    var speed2=speed*8;
                                    result_text+="网络带宽:"+speed2.toFixed(2)+"Mb/秒</br/>";
                                       
                                    $("#result").html(result_text);
                            })
                        }
                    })
            })  
        })            
    </script>
</head>
<body>
    <p></p>
    <p></p>
    <p><a id="test" href="#" >开始测试</a>
    </p>
    <p></p>
    <p><div id="result"></div>  
</body>
</html>
 
谢谢关注websites博客!
 
 

 

 

 
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

云尔Websites

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

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

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

打赏作者

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

抵扣说明:

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

余额充值