我需要像这个例子一样调试混淆的JavaScript:
__d("DataStore",[],function(a,b,c,d,e,f){var g={},h=1;function i(l){if(typeof l=='string'){return 'str_'+l;}else return 'elem_'+(l.__FB_TOKEN||(l.__FB_TOKEN=[h++]))........
嵌入在MSIE,Opera和Chrome中的JavaScript调试器不理解JS使用分号而不是CRLF作为换行符;因此无法调试这样的脚本,因为整个函数位于一个大行上,调试器总是突出显示这一行,不允许我看看代码的哪一部分实际执行。
有没有办法调试包含很长代码行的JavaScript文件,而不使用CRLF来分隔代码行?
答案 0 :(得分:33)
Chrome devtools“Scripts / Sources”窗格具有“漂亮打印”模式(在底部工具栏中查找{}
按钮)。
答案 1 :(得分:3)
使用Javascript Beautifier重新格式化代码,然后调试代码。
答案 2 :(得分:1)
Google Chrome浏览器具有“漂亮打印”功能,可以重新输入代码。
我通常不会使用它,因此我不知道它何时存在,但它存在于Chrome 21开发中。
答案 3 :(得分:1)
没有单一的解决方案。您可以首先将javascript代码复制/粘贴到http://jsbeautifier.org/
中。