我创建了一个适用于多个商店系统的插件。我发现有时他们会覆盖原生代码。我如何确定代码没有被修改?我并不打算从安全的角度来看待这个问题 - 我假设用户能够篡改客户端的所有内容 - 但只需要确认我正在使用的当前对象是预期的一个。例如,Google Chrome会在从JSON对象打印方法时返回此信息:
> JSON.stringify.toString()
< "function stringify() { [native code] }"
这是检查篡改的可靠方法吗?
答案 0 :(得分:2)
如果您在其他人之前加载JavaScript文件,那么您可以使用许多工具Object.preventExtensions(),Object.seal()和Object.freeze()。这更像是一种预防措施。
他们表现得略有不同,但彼此重叠,article很好地涵盖了他们。总结: