本文实例讲述了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程序设计有所帮助。