CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  JavaScript

代码执行效率问题!

楼主41756620(人只有抱着自己的时候才会成长)2006-03-04 15:12:08 在 Web 开发 / JavaScript 提问

这个是小弟写的程序  
  [code]  
  <html>  
  <head>  
  <title>输出测试</title>  
  <script   language="javascript">  
  function   js()  
  {  
  var   nl;   //存放字符长度  
  var   i;     //定义循环种子  
  var   s;     //定义字符变量  
  var   k;     //定义存放数字  
  var   tn="";   //定义存放最后结果  
  var   example=document.all.tx.value;   //获取字符例子  
  nl=document.all.tx.value.length;   //计算输入字符串的长度  
  s=pl(example,nl);  
  for(i=0;i<s.length;i++)  
  {  
  k=s.charAt(i);  
  tn+=k+"有"+nu(k,nl,example)+"个\n";  
  }  
  document.all.area1.value=tn  
   
  }  
   
   
  function   pl(x,y)   //去掉相同的字符  
  {  
  var   i,j,s,n;  
  var   same=new   Array();  
  var   tsame=new   Array();  
  var   text="";  
  for(s=0;s<y;s++)       //初始化数组1  
  {  
  same[s]=x.charAt(s)  
  }  
   
  for(n=0;n<y;n++)       //初始化数组2  
  {  
  tsame[n]="";  
  }  
   
  for(i=0;i<y;i++)  
  {  
  var   k=0;  
  for(j=0;j<y;j++)  
  {  
  if(same[i]!=tsame[j])  
  {  
  k+=1;  
  }  
  }  
  if(k==y)  
  {  
  tsame[i]=same[i];  
  }  
   
  text+=tsame[i];  
  }  
  return   text;  
   
  }  
   
   
  function   nu(x,y,z)   //判断相同字符一共有几个  
  {  
  var   i;  
  var   zf=0;  
  for(i=0;i<y;i++)  
  {  
  if(z.charAt(i)==x)  
  {  
  zf+=1;  
  }  
   
  }  
  return   zf;  
  }  
  </script>  
  </head>  
  <body>  
  输入内容:<br>  
  <textarea   rows   =   "5"   cols=   "30"   name   =   "tx"   ></textarea>  
  <input   type   =   "button"   value   =   "提&nbsp;交"   onclick   =   "js()">  
  <br><br>  
  <textarea   name   =   "area1"   rows   =   "20"   cols   =   "30"   readonly>  
  </textarea>  
  </body>  
  </html>  
  [/code]  
   
  ////////////这个是无忧上面的大侠帮我改了一下的代码  
   
   
  [code]  
  <html>  
  <head>  
  <title>输出测试</title>  
  <script   language="javascript">  
          function   js()  
          {  
                  var   hash   =   [];  
                  for   (var   i   =   0,   s   =   document.all.tx.value;   i   <   s.length;   ++i)  
                  {  
                          var   c   =   s.charAt(i);  
                          hash[c]   =   hash[c]   ==   null   ?   1   :   hash[c]   +   1;  
                  }  
                  var   buffer   =   [];  
                  for   (var   c   in   hash)  
                  {  
                          buffer.push(c   +   ":   "   +   hash[c]);  
                  }  
                  document.all.area1.value   =   buffer.join("\n");  
          }  
  </script>  
  </head>  
  <body>  
  输入内容:<br>  
  <textarea   rows=   "5"   cols   =   "30"   name   =   "tx"></textarea>  
  <input   type   =   "button"   value   =   "提&nbsp;交"   onclick   =   "js()">  
  <br><br>  
  <textarea   name   =   "area1"   rows   =   "20"   cols   =   "30"   readonly>  
  </textarea>  
  </body>  
  </html>  
  [/code]  
   
   
   
  如果输入一大篇文章,我的代码会执行的很慢。甚至会死机  
  而下面改进的那个代码就执行的非常快  
  那里的问题啊?  
  那位大哥哥能给我个详细的答案啊  
  而且能把改进的代码给我加个详细的注释  
  他的那个代码有些地方我看不明白  
  谢谢了  
  谢谢了 问题点数:20、回复次数:0Top

相关问题

  • 代码的执行效率的讨论.
  • 这段代码执行效率太低,有什么方法解决?
  • Sql执行效率
  • 一个关于执行效率的问题(附有代码),欢迎大家探讨。
  • 大家看看这段代码的执行效率为什么会这么低呢?
  • 大家帮忙看看这段代码的执行效率,应该怎么改善,写出好的详细代码给高分。
  • VB.NET能否用代码执行代码?
  • 动态执行代码
  • 自动执行代码
  • 关于执行效率

关键词

得分解答快速导航

  • 帖主:41756620

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo