Javascript 这两个var$test.parent()和var test.parent()之间的用法有什么不同吗?

Javascript 这两个var$test.parent()和var test.parent()之间的用法有什么不同吗?,javascript,jquery,Javascript,Jquery,我有两个变量和下面的代码来访问元素。我可以访问父元素及其子元素的两个变量。我看不出有什么不同。它们是相同的还是有什么不同 HTML <div>Sample text : <input id='test' type='text' value='test' /> </div> $(函数(){ var测试=$('测试'); var$test=$(“#test”); log($test.parent().text()); log(test.parent(

我有两个变量和下面的代码来访问元素。我可以访问父元素及其子元素的两个变量。我看不出有什么不同。它们是相同的还是有什么不同

HTML

<div>Sample text : 
    <input id='test' type='text' value='test' />
</div>
$(函数(){
var测试=$('测试');
var$test=$(“#test”);
log($test.parent().text());
log(test.parent().text());
console.log(test[0]=$test[0]);
log(test==$test);
});

示例文本:

我可以看到这个问题的三个可能方面,因此我将回答所有三个方面:

$
符号 在JavaScript中,
$
只是另一个字符,可以用作变量名的一部分,也是名称的一部分。这与PHP不同,PHP使用
$
符号作为前缀,而不是名称的一部分

与任何其他有效字符(数字除外)一样,
$
本身也可以用作有效名称,jQuery使用它来命名其主要功能(AKA
jQuery

您可以随意选择变量的名称,但许多开发人员喜欢以
$
符号开始命名变量,以提醒它表示一个jQuery对象,它是一个非平凡的对象

换句话说,只要你们记得你们做了什么,你们决定从
$
开始还是不开始并没有什么区别

这两个变量相同吗? 如上所述,这两个变量名不相同。一个有4个字符,一个有5个字符。他们之间根本没有任何关系

这两个物体是一样的吗? 每次运行jQuery函数时,都会得到一个新对象。此对象包含对参数中引用的DOM对象的引用

尽管这两个jQuery对象引用同一个DOM对象,但对象本身并不相同

这是许多新的jQuery开发人员陷入的陷阱:

$current=$('div#something');
//  some stuff
if($current==$('div#something')) …; // always false

给你。三个答案。您可以选择:)

不,但是,一些开发人员喜欢在变量前面加上
$
以表示它们包含jQuery对象。这只是一种偏好,完全一样。
$current=$('div#something');
//  some stuff
if($current==$('div#something')) …; // always false