JavaScriptové únikové citace / únikové řetězce [Příklady]

Tento článek vysvětlí, jak používat escape znaky k uvozovkám v řetězcích v programovacím jazyce JavaScript, s několika příklady.

Co je řetězcová proměnná v JavaScriptu?

řetězec je typ proměnné. Představuje řadu nula nebo více znaků. Dalšími typy proměnných jsou numerické, booleovské a pole proměnné.

typ proměnné definuje, jaké hodnoty může obsahovat a co se s tím dá dělat. Řetězcové proměnné lze například rozdělit a spojit do nových řetězců a s numerickými proměnnými lze provádět matematické operace.

Použití uvozovek k definování řetězců

V JavaScriptu jsou řetězce definovány zabalením řady znaků do uvozovek a přiřazení této hodnoty k proměnné.

Řetězce JavaScriptu mohou obsahovat libovolné znaky podporované ve znakové sadě používané znakovou sadou UTF-16.

var myString = "this is a string!";

Jednořádkové řetězce

Řetězce s jedním řádkem lze definovat pomocí single nebo dvojité uvozovky :

var myString = 'this is a string!';
var myOtherString = "this is a string too!";

Víceřádkové řetězce

Řetězce zahrnující více řádků lze definovat pomocí backticks místo uvozovek:

var myString = `this is a 
string spanning
several lines!`;

Co jsou únikové znaky?

To je všechno docela jednoduché, ale je tu problém – co když chcete, aby váš řetězec obsahoval stejný znak uvozovky, který byl použit k definici řetězce?

var myString = "Some guy once said "To be or not to be", or something to that effect.";

Výše uvedený kód způsobí chybu syntaxe , protože uvozovky, které chceme zahrnout do řetězce, narušují správné použití dvojitých uvozovek používaných k definování řetězce.

Escape znaky jsou řešením – můžeme JavaScriptu říci, že dvojité uvozovky v řetězci jsou součástí samotného řetězce a že by je neměl považovat za začátek nebo konec definice řetězce.

V JavaScriptu je znakem escape pro uvozovky používané v řetězcích znak \ (obrácené lomítko).

Escapování uvozovek

Chcete-li tedy zabránit tomu, aby uvozovky v řetězci zasahovaly do syntaxe JavaScriptu pro definování řetězce, jednoduše před ně umístěte zpětné lomítko takto:

var myString = "Some guy once said \"To be or not to be\", or something to that effect.";
console.log(myString);

Výše uvedený příklad vypíše do konzole následující:

Some guy once said "To be or not to be", or something to that effect.

Escapování únikových znaků

Samozřejmě budete pravděpodobně chtít použít také \ (obrácené lomítko) v určitém okamžiku také ve vašich řetězcích. Nebojte se, můžete také uniknout únikové postavě:

var myString = "\\"; 
console.log(myString);

Výše uvedený kód vypíše do konzole následující:

\