javascript中的单引号或双引号

javascript中的单引号或双引号,javascript,jquery,Javascript,Jquery,我总是在javascript中看到一种书写风格,但我不知道为什么代码会这样。 例如,我有一个变量 var topic = "community"; 当我学习javascript时,我看到有人在jQuery中编写了这样的代码,第节中的一些代码 :contains("' + topic + '") 但我认为它可以像这样编码 :contains(topic) 或 :包含(“主题”) 以上三者的区别是什么 :contains("topic") 搜索包含“主题”字符串的元素 何处为

我总是在javascript中看到一种书写风格,但我不知道为什么代码会这样。 例如,我有一个变量

   var topic = "community";
当我学习javascript时,我看到有人在jQuery中编写了这样的代码,第节中的一些代码

 :contains("' + topic + '")
但我认为它可以像这样编码

  :contains(topic)
或 :包含(“主题”)

以上三者的区别是什么

:contains("topic")
搜索包含“主题”字符串的元素

何处为

 var topic = "community";
 :contains(topic)
这里的主题变成了“社区”。所以它搜索包含“社区”的元素

好吧

:contains("' + topic + '")
我想代码不完整

 $('div:contains("' + topic + '")')..; //div for example sake
这就变成

 $('div:contains("community")')..; //<-- just to make sure the string is encoded with `""`
$('div:contains(“community”))// 
:contains(“+topic+”)
将查找字符串“(topic的值)”,包括单引号

:contains(topic)
将查找topic的值,但不包含周围的引号

:contains("topic")

将查找字面上的主题。

单引号和双引号之间没有区别,它们都用于将元素标记为字符串

var s = "hello" 
var m = 'hello'
m === s // true
另一个示例涉及以下情况下的字符串转义:

contains("' + topic + '")

主题实际上引用了一个变量而不是字符串,因此必须对引号进行转义,程序才能访问变量的值。否则它不会读取变量topic的值,而只是打印字符串“topic”。

单引号与双引号通常与是否会发生字符串替换有关,但就我所知,在JS中这并不重要

3之间的区别在于,第一个是变量赋值,可以在其中替换字符串。第二个是作为参数传递字符串,第三个是传递变量或常量主题

var topicOne = "Community1";

function write(toOutput) {
    document.write(toOutput);
}

write(topicOne);
write("topicOne");
write('topicOne');
下面是3将输出的内容:

Community1
topicOne
topicOne
然而,在PHP中,相同的代码会有不同的行为,因为双引号意味着字符串替换

<?php
$topicOne = "community1";
$topicTwo = "community2$topicOne";


function write($toOutput) {
     print $toOutput;
}
write($topicOne);
write("$topicOne");
write('$topicOne');
write($topicTwo);
write("$topicTwo");
write('$topicTwo');
?>

看看区别在哪里?

Duplicate:@JamieHutber我不认为这是重复的我认为整个代码类似于
.find(':contains('+topic+'))
。在这种情况下,如果你从左到右使用单引号和双引号,那么最终结果将是。find(':contains(“community”)“)第二种情况不是CSS语法错误,而是显示包含社区的元素吗?(CSS不需要引用字符串吗?@slebetman不需要。您可以不带引号地传递URL和其他内容,但请记住这不是严格意义上的CSS,而是jQuery使用的Sizzle选择器引擎,它提供了类似CSS的API
community1
community1
$topicOne
community2community1
community2community1
$topicTwo