JavaScript转换二进制编码为ASCII码的方法

 更新时间:2015年04月16日 10:43:11   作者:令狐不聪  
这篇文章主要介绍了JavaScript转换二进制编码为ASCII码的方法,涉及javascript编码转换的技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了JavaScript转换二进制编码为ASCII码的方法。分享给大家供大家参考。具体如下:

<html>
<head>
<script type="text/javascript">
var input_id = "bin_text";
var answer_id = "answer";
function convertToASCII() {
 var bin_text = document.getElementById(input_id);
 var answer = document.getElementById(answer_id);
 if (!answer) {
  alert("Error: No element with id \""+answer_id+"\".");
  return;
 }
 if (bin_text)
  var text = bin_text.value;
 else {
  error("No element with id \""+input_id+"\".");
  return;
 }
 var divisible = text.length % 8;
 var nonBinary = /[^0|1]/.test(text);
 if (text.length > 0 && divisible == 0 && !nonBinary) {
  var regex = /[0|1]{8}/g;
  var str = text.match(regex);
  var code = 0;
  var placeVal, exp, digit;
  var ascii = '';
  while (str.length > 0) {
   code = 0;
   for (var i=0; i<str[0].length; i++) {
    placeVal = 7-i;
    exp = Math.pow(2, i);
    digit = str[0].charAt(placeVal);
    code += exp*digit;
   }
   str.shift();
   ascii += String.fromCharCode(code);
  }
  answer.innerHTML = "<p class=\"binary\">" + ascii + "</p>";
 }
 else {
  error("Malformed binary.");
  return;
 }
 function error(errText) {
  answer.innerHTML = "<span class=\"error\">Error: " + 
  errText + "</span>";
 }
}
</script>
<style type="text/css">
.block {
 width: 45%;
 border: 1px solid #000000;
 padding: 10px;
}
.binary {
 background-color: #C6FFC7;
 padding: 3px;
}
.error {
 background-color: #FFC6C6;
 padding: 3px;
}
</style>
</head>
<body>
<div style="float:left;" class="block">
 <form onSubmit="convertToASCII(); return false;">
  <p>Enter some binary to decode:</p>
  <input type="text" id="bin_text"/>
 </form>
</div>
<div style="float:right;" class="block">
 <p id="answer"><br/></p>
</div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

相关文章

  • JS中产生20位随机数以0-9为例也可以是a-z A-Z

    JS中产生20位随机数以0-9为例也可以是a-z A-Z

    本节主要介绍了JS如何产生随机数,本例产生20位随机数以0-9为例也可以是a-z A-Z,需要的朋友可以参考下
    2014-08-08
  • JS实现简单拖拽效果

    JS实现简单拖拽效果

    这篇文章主要为大家详细介绍了JS实现拖拽效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • Js实现滚动变色的文字效果

    Js实现滚动变色的文字效果

    滚动变色的文字js特效,可看到文字在交替变色显示,以吸引人的注意,效果真心不错哦,需要的朋友可以参考下
    2014-06-06
  • 如何利用JSHint减少JavaScript的错误

    如何利用JSHint减少JavaScript的错误

    JSHint是一个社区驱动用来检测JavaScript代码中错误和潜在的问题以及执行团队的编码规范工具。它非常灵活,因此可以很容易地适应您特定的编码规则和你的代码执行环境。JSHint将永远保持开源的方式。
    2016-08-08
  • JS/HTML5游戏常用算法之追踪算法实例详解

    JS/HTML5游戏常用算法之追踪算法实例详解

    这篇文章主要介绍了JS/HTML5游戏常用算法之追踪算法,结合吃豆人游戏的算法原理以实例形式详细分析了追踪算法的相关算法操作技巧与注意事项,需要的朋友可以参考下
    2018-12-12
  • js中json处理总结之JSON.parse

    js中json处理总结之JSON.parse

    parse是解析json数据多种方法中的其中一种。这篇文章主要介绍了js中json处理总结之JSON.parse,需要的朋友可以参考下
    2016-10-10
  • 学习JavaScript设计模式(链式调用)

    学习JavaScript设计模式(链式调用)

    这篇文章主要带领大家学习JavaScript设计模式,其中重点介绍链式调用,感兴趣的小伙伴们可以参考一下
    2015-11-11
  • JS实现省市县三级下拉联动

    JS实现省市县三级下拉联动

    这篇文章主要为大家详细介绍了JS实现省市县三级下拉联动,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • html dom节点操作(获取/修改/添加或删除)

    html dom节点操作(获取/修改/添加或删除)

    DOM 是关于如何获取、修改、添加或删除 HTML 元素的标准,下面为大家介绍下html dom节点操作,感兴趣的朋友可以参考下
    2014-01-01
  • Blazor实现微信的Tab切换功能

    Blazor实现微信的Tab切换功能

    这篇文章主要介绍了Blazor实现微信的Tab切换功能,本文中的UI组件使用的是MASA Blazor,您也可以是其他的UI框架,这个并不影响实际的运行效果,本文案例是兼容PC和Android的,演示效果是android中执行的,在PC中执行效果依然有效,需要的朋友可以参考下
    2023-01-01

最新评论