assert(JSON.stringify(searchForMatches(searchData,['cats']))==='["catcode.io","catgifs.co"]',"The result should be '[\"catcode.io\",\"catgifs.co\"]'");
为什么我需要多次使用\?否则会抛出错误。它是否特定于JSON.stringify和/或何时/如何在将来的实例中使用它?
答案 0 :(得分:1)
反斜杠是一个在字符串中用于转义特殊字符的JavaScript运算符。 在你的情况下,它是逃避报价。见这个例子:
// in this case it escapes the " symbol because that would end the string.
var x = "\"";
这与:
相同// in this case you don't need to escape it because
// the string begins with the apostrophe instead of the " character
var x = '"';
在两种情况下 console.log(x); 都会打印单引号字符。
答案 1 :(得分:1)
\
是一个转义运算符。它阻止语言将下一个char解析为语法相关,因此如果没有它,则在第一个"
开始字符串之后,您的字符串会在下一个"
停止。