自古 V2EX 网站出大神,请问前端 js 大佬,这里的 n 是什么意思,追踪上去又只是 function()的形参

2018-09-28 20:20:30 +08:00
 Mrrrrr10

请求前端大佬开开光,教教我

var s = n(3) , l = r(s) , u = n(33) , c = n(215) , f = r(c) , h = n(366) , p = r(h) , d = n(381) , m = r(d) , y = n(382) , v = r(y) , g = n(374) , b = r(g) , w = n(372) , E = r(w) , _ = n(221) , C = r(_) , j = n(379)

4388 次点击
所在节点    JavaScript
9 条回复
zhzer
2018-09-28 20:26:34 +08:00
混淆代码怎么猜,别个把参数混淆成表或者抓了字符串
甚至你说这是南极冰层下的核武器启动程序都行啊
zealot0630
2018-09-28 20:43:20 +08:00
参数也可能是函数阿
Mrrrrr10
2018-09-28 20:47:16 +08:00
@zhzer 大佬,追踪到上面,n 是这样的,然后就不知道 n 是什么东西了。
380: function(e, t, n) {
(function(e) {
"use strict";
function r(e) {
return e && e.__esModule ? e : {
"default": e
}
}
Mrrrrr10
2018-09-28 20:47:49 +08:00
@zealot0630 大佬,请教一下,追踪到上面,n 是这样的,然后就不知道 n 是什么东西了。
380: function(e, t, n) {
(function(e) {
"use strict";
function r(e) {
return e && e.__esModule ? e : {
"default": e
}
}
470326964
2018-09-28 20:48:16 +08:00
南极冰层下的核武器启动程序 2333
Jeremial
2018-09-28 22:25:04 +08:00
这不就是 webpack 打成的包里面的函数吗,n 就是个类似于 require 的函数吧。传入 moduleId, 然后返回相应的内容
jawnkuin
2018-09-28 23:55:54 +08:00
逆向的时候可以考虑
chrome beautify 并断点调试一下
FakeLeung
2018-09-29 00:04:12 +08:00
打包后的代码。这应该是兼容 AMD CMD 的写法吧。
baxtergu
2018-09-29 09:34:45 +08:00
类似这个结构:
function n(id){
var idFuncMap = {
1:func1,
2:func2,
...
}
return idFuncMap(id);
}
这是打包工具对代码打包以后的,n 函数就是所有函数(或者 Module )的一个汇总。传入的是打包时候 webpack 对 require 进来的 Module 的自增 id。函数返回的是一个 function 而不是方法执行的结果。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/493628

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX