literal int number values to hex convert

This commit is contained in:
sanex3339
2016-05-21 15:10:19 +03:00
parent 4d9f30c642
commit 3230804d5f
6 changed files with 24 additions and 0 deletions
+3
View File
@@ -30,6 +30,9 @@ class Utils {
const rangeMinInteger = 10000, rangeMaxInteger = 99999999, prefix = '_0x';
return `${prefix}${(Utils.decToHex(Utils.getRandomInteger(rangeMinInteger, rangeMaxInteger))).substr(0, length)}`;
}
static isInteger(number) {
return number % 1 === 0;
}
static strEnumify(obj) {
return obj;
}
+12
View File
@@ -69,6 +69,18 @@ export class Utils {
return `${prefix}${(Utils.decToHex(Utils.getRandomInteger(rangeMinInteger, rangeMaxInteger))).substr(0, length)}`;
}
/**
* @param number
* @returns {boolean}
*/
public static isInteger (number: number): boolean {
return number % 1 === 0;
}
/**
* @param obj
* @returns {T}
*/
public static strEnumify <T extends { [prop: string]: '' | string }> (obj: T): T {
return obj;
}
+3
View File
@@ -16,6 +16,9 @@ class NodeObfuscator {
}
replaceLiteralNumberByHexadecimalValue(nodeValue) {
const prefix = '0x';
if (!Utils_1.Utils.isInteger(nodeValue)) {
return String(nodeValue);
}
return `${prefix}${Utils_1.Utils.decToHex(nodeValue)}`;
}
replaceLiteralStringByArrayElement(nodeValue) {
+4
View File
@@ -49,6 +49,10 @@ export abstract class NodeObfuscator implements INodeObfuscator {
protected replaceLiteralNumberByHexadecimalValue (nodeValue: number): string {
const prefix: string = '0x';
if (!Utils.isInteger(nodeValue)) {
return String(nodeValue);
}
return `${prefix}${Utils.decToHex(nodeValue)}`;
}
+1
View File
@@ -43,6 +43,7 @@ let obfuscatedCode = index_1.JavaScriptObfuscator.obfuscate(`
};
test2(22);
console.log(105.4);
})();
`, {
rotateUnicodeArray: false
+1
View File
@@ -44,6 +44,7 @@ let obfuscatedCode: string = JavaScriptObfuscator.obfuscate(
};
test2(22);
console.log(105.4);
})();
`,
{