我有一个简单的 javascript 代码:
'test1 {0} test2 test3'.replace('{0}', "test$'")
我预计结果是test1 test$' test2 test3
。但结果是test1 test test2 test3 test2 test3
这是绝对正常的。根据 mozilla 文档:https ://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/replace
在这种情况下,$'
序列具有意义。
但我想准确地{0}
替换。test$'
我不希望$'
序列被其他东西取代。我尝试了很多方法:
'test1 {0} test2 test3'.replace('{0}', "test\$\'")
'test1 {0} test2 test3'.replace('{0}', "test\\$\\'")
'test1 {0} test2 test3'.replace('{0}', "test\u0024\u0027")
'test1 {0} test2 test3'.replace('{0}', "test\$'")
但没有任何效果。
如何转义$'
序列以避免 Firefox 使用它?