簡體   English   中英

\\ u在JavaScript String.raw`template literal`中

[英]\u in JavaScript String.raw`template literal`

如何避免將\\u\u003c/code>解釋為字符轉義序列?

在我的JavaScript項目中,我需要一些起始LaTeX命令的字符串文字。 在我每次反斜杠轉義( \\\\ )之前,我最近在JavaScript中發現了原始字符串。 如果我可以在源代碼中擁有完全的字符串文字,那就太好了。 不幸的是,現在在\\usepackage{indentfirst}存在一個問題。 \\u\u003c/code>被解釋為字符轉義序列,這當然不是我想要的。 有沒有辦法避免這種行為,或者這不是String.raw的地方?

簡化代碼:

var title="title", author="author";

console.log(String.raw`
\documentclass{book}

\title{${title}}
\author{${author}}
\date{}

\usepackage{indentfirst}

\begin{document}
\maketitle{}
\tableofcontents{}
`);

我通過用`+"\\\\usepackage{indentfirst}"+String.raw`替換違規行來實現這一點,但當然這不是很清楚。

你可以通過用\\usepackage{indentfirst}替換行來利用\\u\u003c/code>語法,甚至只用\\x5Cusepackage{indentfirst}

5C對應於\\

另一種選擇可能是對表達式使用美元符號和花括號表示法。 ${'\\\\'}usepackage{indentfirst}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM