我想将字符串从ascii转换为十六进制
我试过了:
var stringing = "";
jQuery.each("SomeText".split(""), function (i, data) {
stringing = stringing + data.charCodeAt(0)
});
但是这个输出和我得到的不一样 http://www.asciitohex.com/
我需要获得相同的值,因为只有在sharepoint中的KQL中才能使用
答案 0 :(得分:2)
怎么样
String.prototype.convertToHex = function (delim) {
return this.split("").map(function(c) {
return ("0" + c.charCodeAt(0).toString(16)).slice(-2);
}).join(delim || "");
};
和
"SomeText".convertToHex();
// -> "536f6d6554657874"
"SomeText".convertToHex(" ");
// -> "53 6f 6d 65 54 65 78 74"
请注意,此将失败,带有Unicode字符。仅用于ASCII / ANSI输入。
答案 1 :(得分:1)
您还可以使用 Buffer 将ASCII转换为十六进制
let hex = Buffer('Some Text', 'ascii').toString('hex');
console.log(hex);