Javascript 使用jQuery.guid

Javascript 使用jQuery.guid,javascript,jquery,guid,Javascript,Jquery,Guid,我可以将jQuery.guid用于我自己的用途吗?我有需要唯一id attr的元素,所以我只想将其设置为jQuery.guid++如下: var guid = jQuery.guid++; $('<a href="#" id="a' + guid + '">link</a>').appendTo('body'); var guid=jQuery.guid++; $('')。附于('正文'); 这安全吗?它会破坏任何代码或插件吗?它不应该破坏任何东西,不过,如果要将$

我可以将
jQuery.guid
用于我自己的用途吗?我有需要唯一id attr的元素,所以我只想将其设置为
jQuery.guid++
如下:

var guid = jQuery.guid++;

$('<a href="#" id="a' + guid + '">link</a>').appendTo('body');
var guid=jQuery.guid++;
$('')。附于('正文');

这安全吗?它会破坏任何代码或插件吗?

它不应该破坏任何东西,不过,如果要将
$.guid
用作全局变量,则无需创建另一个名为
guid
的变量

只需初始化一次
$.guid
,然后直接使用它

// initialize once
$.guid= 0;

// use it directly when needed
$('<a href="#" id="a' + ($.guid++) + '">link</a>').appendTo('body');
//初始化一次
$.guid=0;
//需要时直接使用
$('')。附于('正文');
更新:


似乎jQuery在内部使用了
$。guid
用于实时事件,不应该用于DOM。您应该创建自己的全局变量并自己递增。

您可以使用此代码生成Guid:

'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, 
function(c) 
{
    var r = Math.random() * 16|0, v = c == 'x' ? r : (r&0x3|0x8);
    return v.toString(16);
});

是的,但是jQuery已经在内部使用了$.guid。我需要重用guid为标签和事件提供的任何值,因此我需要变量的副本。哦,对不起,我真的不知道
$。guid
是在内部使用的。在这种情况下,为了安全起见,我会使用我上面写的内容,只使用另一个变量名,例如
$.myguid
。是的,但我不确定jQuery是否跟踪在删除或添加元素或事件时它所使用的数字。我需要知道它对任何插件或跟踪事件是否重要。我不希望它破坏任何代码,这就是为什么我说要使用不同的变量名,这样它就不会与
$.guid
发生冲突。为什么要使用jQuery内部使用的变量?如果您只需要一个全局唯一的数字,请自己创建变量并递增它。这应该足够满足您的需要了,还是我遗漏了什么?是的,我不想做我自己的变量。我只是需要信息,如果它会破坏jQuery中的任何东西,它不会破坏jQuery。如果您更改jQuery.guid,可能有人编写了一个坏插件,该插件可能会崩溃。不过我还是建议不要这样做,因为任何新的jQuery版本都可能会破坏它<代码>$。guid实际上不应该是公共的。