目前js逆向遇到的函数、解法或者其他注意事项集合
0x01、Object(需要调用的函数名)(参数)用法详解
后面的参数将传递到需要调用的函数名中,如下:
// s.c对应e1 s.d对应e2 s.e对应sig
// 这里注意一下:object(sig)(f)表示将f传递到sig里面去
var f = Object(e1)(Object(e2)(JSON.stringify(l.payload))), p = Object(sig)(f);
0x02、js前加感叹号是什么意思?比如 !function(){}();
原文来源:https://blog.youkuaiyun.com/H_O_W_E/article/details/51388500
内容如下:
--------------------------我是可爱的分割线---------------------------------------------------
此文出自 http://q.cnblogs.com/q/52920/
感谢原创作者和转载者,感谢提问人和解答人。
!function(){}(); !有什么用?
从语法上来开,Javascript中分号表示语句结束,在开头加上,可能是为了压缩的时候和别的方法分割一下,表示一个新的语句开始。所以,如果在一个单独的JS文件中,开头的分号是没有任何意义的,可以删掉。
叹号是逻辑运算符,是“非”的意思,常见这种写法 if(!true){};而将运算符加载函数定义的前面,则是将函数看做一个整体,然后再调用这个函数,并对返回的结构进行逻辑运算。
说白了,此处就是构建了一个立即执行函数,建议楼主知道意思就可以,自己写的时候,可以使用更清晰的格式:
(function(){})();
楼上已经给出很详细的解说了。
这里补充一点:在函数声明【 function (){} 】后面加【 () 】,意思是执行这个函数声明。有的叫法是“匿名自动执行函数”

本文总结了在JS逆向过程中遇到的常见问题,包括Object函数调用、感叹号函数用法、IIFE(立即执行函数表达式)、window对象在Node.js中的转换以及Node.js中的Base64编解码。旨在帮助爬虫开发者解决反爬难题。
最低0.47元/天 解锁文章
1527

被折叠的 条评论
为什么被折叠?



