What is the difference between ' and " in JavaScript?

0 votes
asked Jun 3, 2009 by fmsf

I saw this question and I am wondering about the same thing in JavaScript.

If you use the character ' or the character " when making strings in JavaScript, the application seems to behave the same. So what is the difference between these two characters?

The only advantage I have seen in using ' to build strings is that I can do stuff like:

var toAppend = '<div id="myDiv1"></div>';

Instead of:

var toAppend = "<div id=\"myDiv1\"></div>";

Is there any significant difference between them that I should be aware of?

6 Answers

0 votes
answered Jun 3, 2009 by paolo-bergantino

They are equivalent for all intents and purposes. If you want to use either one inside a string, it is a good idea to use the other one to create the string, as you noted. Other than that, it's all the same.

0 votes
answered Jun 3, 2009 by philippe-leybaert

There's no difference. The reason for its existence is exactly what you mentioned

0 votes
answered Jun 7, 2010 by pritesh

Your example is the best example to describe the difference between the two....

0 votes
answered Jun 17, 2011 by shanmuk1729

I think there is another difference. If you do the following

var str1 = 'The \' character';
var str2 = 'The " character';
var str3 = "The ' character";
var str4 = "The \" character";
document.write (str1.replace("'","%26");
document.write (str2.replace('"',"%22");
document.write (str3.replace("'","%26");
document.write (str4.replace('"',"%22");

The document.write will fail for str1 and str4. That is the difference, but I don't know if there is a workaround to make them work.

0 votes
answered Jun 11, 2012 by ben-roberts

Although not technically a difference in Javascript, its worth noting that single quoted strings are not valid JSON, per se. I think that people automatically assume that since JSON is valid JS, that valid JS strings are also valid JSON, which isn't necessarily true.

E.g., {'key': 'Some "value"'} is not valid JSON, whereas {"key": "Some 'value'"} is.

0 votes
answered Jun 21, 2013 by davidbourguignon

Good practice, according to Mozilla, is to use " " in HTML (where ' ' cannot be used) while reserving ' ' in Javascript (where both " " and ' ' can be use indifferently)...

Welcome to Q&A, where you can ask questions and receive answers from other members of the community.
Website Online Counter