例如把\s转换成\\s/**
* 下面是自己测试输出的值
*/'\s'.length // 1'\s'.replace(/s/, '') // '''\s'.replace(/\\/, '\\\\') // error
1 回答
手掌心
TA贡献1942条经验 获得超3个赞
你自己其实已经找到答案了,不是么?
在你第一句里
'\s'.length // 1
已经表明了内存中一共就一个字符,即s
,所以在这之后无论你怎么替换都不可能替换掉\
,因为他根本没有实际存在于内存中。
这是为什么呢?
因为``是个转义符号,换句话来说,它是个运算符。
\n //n转义后为换行,所以返回换行\s //s的这个运算无效,所以返回s本身
也就是说
'\s'==='s' //true
注意,三等号,完全一致。
也就是说,你必须在js之前把 \s
替换写(处理)成\\s
添加回答
举报
0/150
提交
取消