Ich habe diese Frage gesehen und wundere mich über dasselbe in JavaScript.
Wenn Sie beim Erstellen von Zeichenfolgen in JavaScript das Zeichen "oder das Zeichen" verwenden, scheint sich die Anwendung gleich zu verhalten. Was ist also der Unterschied zwischen diesen beiden Zeichen?
Der einzige Vorteil, den ich beim Erstellen von Strings gesehen habe, ist, dass ich Dinge tun kann wie:
var toAppend = '<div id="myDiv1"></div>';
Anstatt von:
var toAppend = "<div id=\"myDiv1\"></div>";
Gibt es einen signifikanten Unterschied zwischen ihnen, den ich beachten sollte?
quelle
Ich denke, es gibt noch einen weiteren Unterschied. Wenn Sie Folgendes tun
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"));
Das document.write schlägt für str1 und str4 fehl. Das ist der Unterschied, aber ich weiß nicht, ob es eine Problemumgehung gibt, damit sie funktionieren.
quelle
Versuche dies:
console.log("mama+"mama"") Output : Uncaught SyntaxError: missing ) after argument list
Versuchen Sie jetzt:
console.log('mama+"mama"') Output : mama+"mama"
quelle
Wie oben geschrieben, gibt es keinen Unterschied, aber für Situationen müssen Sie "/ 'in einer Zeichenfolge verwenden.
Ich denke, eine bessere Vorgehensweise für Situationen, in denen Sie Zeichenfolgen mit Variablen verketten müssen, ist die Verwendung von Vorlagenzeichenfolgen:
Price: ${price}, Amount: ${amount}. Total: ${price*amount}
Auf diese Weise können Sie "und" hinzufügen und Variablen verketten.
Viel einfacher zu lesen, viel einfacher zu schreiben.
quelle
WARNUNG!!!!
Da ist ein Unterschied. Beim Hinzufügen zu Arrays müssen Sie das eine oder andere verwenden. Das Array wird verwirrt, wenn Sie zwei verschiedene Arten von Anführungszeichen verwenden.
Beispiel:
//WILL NOT WORK var array = ["apple","orange","banana"]; array.push('pear'); //WILL WORK var array = ["apple","orange","banana"]; array.push("pear");
quelle