jQuery变量名附加一个大数字

时间:2013-09-11 14:02:33

标签: javascript jquery security

我经常在我的代码中看到我从我公司的媒体中心加载jQuery在控制台中通常无法使用。 (否$jQuery

但有时候,对于附加了jQuery的那些元素,它有很长的数字。

jQuery18306575689211022109_1378907534666

这样做的目的是什么?安全

此外,jQuery有时可直接在控制台中使用,但仅限于上述数字。 因此,我无法在控制台中调试我的应用程序,我需要使用jQuery进行查询。

但是,在JavaScript代码中,jQuery完全被用作$jQuery。所以我应用了一个断点并导出为window.jQuery = jQuery

jQuery被混淆时,这是调试应用的正确方法吗?

更新

例如,请检查此应用正在呼叫的URL。看来URL知道jQuery附加的数字是多少。调试时如何知道相同的数字?发生了什么事情?

2 个答案:

答案 0 :(得分:4)

这是jQuery自动生成的回调ID。请参阅jsonpCallback的{​​{3}}。

  

最好让jQuery生成一个唯一的名称,因为它可以更容易地管理请求并提供回调和错误处理。

答案 1 :(得分:0)

您似乎混淆了两个不同的变量。您可以在此网站上进行快速测试:http://www.jquery4u.com/function-demos/jsonp/#demo。点击“运行演示”,打开Chrome控制台,输入“jQuery”以检索回调的名称,然后执行这个简单的比较:

jQuery16409391013463027775_1379048051365 === jQuery // false

也就是说,在您的情况下,名为“$”和“jQuery”的变量不可用的事实可能是由于特定的实现。一种可能是使用jQuery.noConflict(),它允许自定义用作jQuery引用的名称,或者从全局范围(window)中完全删除对jQuery的所有引用,所以没有在控制台中访问它的方法。