2进制~62进制和10进制的转换

2008-04-02 10:57:49来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  效果如下:

  

  


  

//varstr="AZ";

  //for(vari=0;i<str.length;i )trace(str.charCodeAt(i));

  //charCode:0-9:(48-57);A-Z:(65-90);a-z:(97-122);

  //将10进制数N转换成d进制数(以0-9,A-Z,a-z字符表示),d为2-62

  functionjh_10toD(N,d){

  N=Math.floor(Number(N));

  d=Math.floor(Number(d));

  d=d<2?2:d>62?62:d;

  vars,e="";

  while(N>0){

  s=N%d;

  if(s>35){

  //36至62的数用a-z字符表示(s-36 97)

  s=String.fromCharCode(s 61);

  }elseif(s>9){

  //10至35的数用A-Z字符表示(s-10 65)

  s=String.fromCharCode(s 55);

  }

  e=s e;

  N=Math.floor(N/d);

  }

  e=e!=""?e:"0";

  returne;

  }

  //将d进制数转换为10进制

  functionjh_Dto10(str,d){

  d=Math.floor(Number(d));

  d=d<2?2:d>62?62:d;

  varcode=0,num=0;

  for(vari=0;i<str.length;i ){

  code=str.charCodeAt(i);

  if(code>96){

  code-=61;

  }elseif(code>64){

  code-=55;

  }else{

  code-=48;

  }

  num =code*Math.pow(d,str.length-1-i);

  }

  returnnum;

  }

  //测试:

  in_D=62;

  num1="15000";

  num2=jh_10toD(num1,in_D);

  bt1.onRelease=function(){

  num2=jh_10toD(num1,in_D);

  };

  bt2.onRelease=function(){

  num1=jh_Dto10(num2,in_D);

  };

  



标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: 配置Flash中的最好选择参数

下一篇: Flash制作轮辐旋转遮照效果(无as)