关于JavaScript脚本中的alert思考

对于JavaScript脚本中的alert的作用只是单纯的在网页表单上弹出一个模态的警告对话框。在大部分的时候被用作对表单提交时作校验客户端输入合法性,如果用户所输入的信息不符合条件,则以alert加提示信息的方式来提醒用户。
    对于alert的使用在正常境况下不存在有争议,可以说alert还是有一定的帮助。但是存在争议的时使用alert会不会给服务器端造成压力。不会?或许大部分看到这里后第一个反应就是这样。
    说不会的人也有其相应的理由:客户端脚本,在客户端执行。怎么会给服务器端造成压力呢?这个解释没有任何问题。但是由于alert是以模态的形式弹出,所以我就提出了这个疑问,希望大家来讨论一下。
   如果在这种情况下:在服务器端往客户端回传数据的时候,其中包含有alert。也就是一下模式:

< html >
   < body  MS_POSITIONING ="GridLayout" >
A
< SCRIPT  > alert("ee"); </ SCRIPT >
B    
   </ body >
</ html >

在这种情况下用户可以看到网页在显示A之后就弹出alert警告框,之后用户如果不关闭alert对话框,则网页也就不会继续显示B。

问题也就处在这里:如果在Web开发中,alert以这种方式出现(有时候开发人员会以这种方式来提示用户信息保存正确或失败)。会不会给服务器造成过多的负载?
  确信会给服务器造成过多负载的人也有其解释的理由,alert以模态窗体出现,在浏览器处理过程中,遇到模态窗体时线程会暂时处理等待状态,直到模态窗体被取消。
那么也就使说在web请求过程中,alert以模态窗体如果不被关闭,那么浏览器当前的线程也会处于等待状态,由于浏览器和服务器的连接也会迟迟不被释放。如果真正如此的话,那么就会给服务器造成极大的压力。
    我对此进行了简单的测试,我假设在alert状态下,浏览器会处于等待状态。我用一下代码进行测试

         private  void Page_Load( object sender, System.EventArgs e)
         {
            this.Page.Response.Write(System.DateTime.Now.Ticks+"||\n");
            this.Page.Response.Write("<SCRIPT >alert(\"ee\");</SCRIPT>");
            this.Page.Response.Write(System.DateTime.Now.Ticks+"||\n");
            
        }

测试是在.net下进行的,只是简单的判断alert之间服务器的时间和alert之后的响应时间。如果说浏览器会处于等待状态,那么二者之间后有一个比较明显的差值。而其这个值会随alert被关闭的时间越迟而越大。
        但是我测到的结果是二则相等。不伦等待多久去关闭alert。
        我从测试中猜想alert不会给服务器造成过多的负载,因为浏览器在处理web请求的过程中,进行远程数据请求和数据显示是分线程处理。所以即便alert的模态显示会使显示的当前线程处于等待状态,但是这并没有影响到远程数据请求。
      当然我的测试有点片面,如没有去监视服务器当时的状态,以及测试数据量的不足。但是只是从侧面去分析这个问题,希望大家能够共同讨论。















本文转自小余(Yice)博客园博客,原文链接:http://www.cnblogs.com/yice/archive/2008/04/17/223644.html    ,如需转载请自行联系原作者


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值