已解决:Replace array-mapped variables with the actual variable name/string?
我正在尝试解码一些 JS,我已经完成了大部分,但是,我在这里遇到了困难。该代码执行如下操作:
var arr = ["value", "value1", "value2"];
console.log(arr[0]);
除了文件大约有 12k 行,数组中有超过 1.4k 的东西。
有没有一种方法可以将 arr[0]
替换为 arr[0]
的实际值(在示例中,它将是“值”),然后保存文件?我尝试使用 RegExp 但一无所获。
我们将不胜感激。
最佳答案
一个简单的想法是在当前范围内使用数组,并使用目标 javascript 文件内容作为 replace()
方法的输入字符串:
var arr = ['hello', 'my', 'world']
var str = `
var arr = ['hello', 'my', 'world']
console.log('arr[2]')
console.log('arr[0]')
console.log('arr[1]')
`
console.log(str.replace(/\b(\w+)\[(\d+)]/g, function(match, $p1, $p2) {
return window[$p1][$p2];
}))
关于JavaScript 数组反混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43672776/