javascript中数组中两个十六进制数的按位OR

时间:2017-07-13 12:27:48

标签: javascript arrays hex bitwise-or

我会收到" n"在JavaScript中的数组中作为字符串数据类型的十六进制值的四字节数。我必须对所有" n"执行按位ORing。数字并以相同格式提供最终值(即十六进制值和字符串数据类型)。我已将我的代码发布为" n" = 2。

的样本
var TTL_ON = ["0xFF208D32","0x5E2C3301"];
TTL_ON="0x"+decimalToHex(eval(TTL_ON.join("|")),8);
WScript.Echo("TTL_ON "+TTL_ON);

function decimalToHex(Decimal, Padding) {
if (decimalToHex.arguments.length != decimalToHex.length) {
    return;
} else {
    var hex = Number(Decimal).toString(16).toUpperCase();
    Padding = typeof(Padding) === "undefined" || Padding === null ? Padding = 2 : Padding;
    while (hex.length < Padding) {
        hex = "0" + hex;
    }
    return hex;
}
}

预期输出为&#34; 0xFF2CBF33&#34;

我收到的输出是&#34; 0x0-D340CD&#34;。

感谢Alex.k解释了问题的根源。任何人都可以为我的问题提供解决方案吗?

0 个答案:

没有答案