javascript代码混淆真的有用吗?

Is code obfuscation really useful in javascript?

最近我转到了 gulp 任务管理器,我注意到默认情况下,构建任务会生成 .map 文件。 这让我想知道:混淆生产部署代码有用吗?它能保护我的软件免遭黑客攻击吗?如果是,我应该从那里删除我的 .map 文件吗?

Javascript 混淆不会保护您的软件免遭黑客攻击。编写软件来取消混淆非常容易,或者简单地使用在线工具:http://jsbeautifier.org/

您想要使用 Gulp 来压缩您的 Javascript 的原因是为了使文件大小更小并且对服务器的请求更少。这使您的网站加载速度更快。

不过要回答您的问题:不要删除您的 .map 文件。它们用于引用 "uglified/obfuscated" 进行调试。参见:

简单的混淆并不能保护您的软件免遭黑客攻击。如果您真的想保护您的 javascript,添加一些东西会让试图窃取或篡改您的软件的人的生活变得非常困难,您应该检查 Jscrambler。我还没有看到任何解决方案甚至接近它们使您能够实现的保护级别。

关于source maps的问题,如果你混淆yes,你应该删除它们。