我必须在JavaScript中将字符串转换为字节(16位)。我可以在.net中在下面的代码中做到这一点,但我必须改变这个使用JavaScript的旧经典ASP应用程序。字符串到字节数组
string strShared_Key = "6fc2e550abc4ea333395346123456789";
int nLength = strShared_Key.Length;
byte[] keyMAC = new byte[nLength/2];
for (int i = 0; i < nLength; i += 2)
keyMAC[i/2] = Convert.ToByte(strShared_Key.Substring(i, 2), 16);
这是JavaScript函数,但不会像上面的.net代码那样返回相同的输出。
function String2Bin16bit(inputString) {
var str = ""; // string
var arr = []; // byte array
for (var i = 0; i < inputString.length; i += 2) {
// get chunk of two characters and parse to number
arr.push(parseInt(inputString.substr(i, 2), 16));
}
return arr;
}
可能重复 - 转换字节数组字符串](http://stackoverflow.com/questions/3195865/javascript-html-converting-byte-array-to-string)问题/解决方案有两种方法。 – epascarello
epascarello - 这个例子不适用于16位。 – user228777