Del*_*ani 150
function hex2a(hexx) {
var hex = hexx.toString();//force conversion
var str = '';
for (var i = 0; (i < hex.length && hex.substr(i, 2) !== '00'); i += 2)
str += String.fromCharCode(parseInt(hex.substr(i, 2), 16));
return str;
}
hex2a('32343630'); // returns '2460'
Run Code Online (Sandbox Code Playgroud)
小智 35
为了完整起见,反向功能:
function a2hex(str) {
var arr = [];
for (var i = 0, l = str.length; i < l; i ++) {
var hex = Number(str.charCodeAt(i)).toString(16);
arr.push(hex);
}
return arr.join('');
}
a2hex('2460'); //returns 32343630
Run Code Online (Sandbox Code Playgroud)
0x8*_*00D 22
另一种方法(如果你使用Node.js):
var input = '32343630';
var output = new Buffer(input, 'hex');
log(input + " -> " + output); // Result: 32343630 -> 2460
Run Code Online (Sandbox Code Playgroud)
Sam*_*age 20
你可以用这个..
var asciiVal = "32343630".match(/.{1,2}/g).map(function(v){
return String.fromCharCode(parseInt(v, 16));
}).join('');
document.write(asciiVal);Run Code Online (Sandbox Code Playgroud)
我在web3库中找到了一个有用的函数.
var hexString = "0x1231ac"
string strValue = web3.toAscii(hexString)
Run Code Online (Sandbox Code Playgroud)
小智 7
** 十六进制转字符串**
let input = '32343630';
Run Code Online (Sandbox Code Playgroud)
注意: let output = new Buffer(input, 'hex'); // 这已被弃用
let buf = Buffer.from(input, "hex");
let data = buf.toString("utf8");
Run Code Online (Sandbox Code Playgroud)
console.log(
"68656c6c6f20776f726c6421".match(/.{1,2}/g).reduce((acc,char)=>acc+String.fromCharCode(parseInt(char, 16)),"")
)Run Code Online (Sandbox Code Playgroud)