为什么String.prototype.replace remove "$'"从我的绳子上
Why does String.prototype.replace remove "$'" from my string?
我没有使用JQuery,所以我不认为这会造成麻烦。我首先使用iOS自动化工具遇到这个问题,然后使用JSFiddle进行验证。如果有人能告诉我如何解决这个问题,那就太好了。
var str = "<'pass!23$'>";
var str1 = str.replace("<'pass!23$'>", "'pass!23$'");
var str2 = str.replace("<'pass!23$'>", "'pass!23$a'");
小提琴在这里:http://jsfiddle.net/adUtw/
这真的让我很困惑!
如果您查看MDN上string.replace
的文档,您会注意到$
单独具有替换的一些特殊含义。因此,如果您想插入$
,则需要使用$$
。
你的replace语句看起来像:
var str1 = str.replace("<'pass!23$'>", "'pass!23$$'");
您可以通过更新Fiddle来验证它是否工作。
$
在出现在replace
的第二个参数中时被以一种特殊的方式解释。
用于引用在第一个参数中定义的正则表达式组:
'abc'.replace('(b)', 'XY$1Z') === 'aXYbZc'
$'
被解释为portion of the string that follows the matched substring.
若要在第二个参数中使用$
,请转义为$$
。
var str1 = str.replace("<'pass!23$'>", "'pass!23$$'");
相关文章:
- "TypeError:t.start未定义”;,在fullcalendar.min.js中,同时在我的网站上使
- 在我的代码中,实体类"卡片展示”;不起作用
- linkedin js"获取我的关系”;问题
- JQuery动画完整功能:如何恢复我的"老这个”;
- 需要帮助修复我的javascript"对于循环“;播放音频播放列表
- 为什么我的JS"如果“;语句的求值结果总是为false
- 我怎么能"DRY”;调出我的html和javascript代码
- 为什么获胜't This Vuejs“;Hello World"示例在我的电脑上渲染
- 得到"否'访问控制允许来源'标头存在于请求的资源上"对于我的JS AJAX而不是“;
- 为什么不't this replace()替换"我的“;
- JavaScript:为什么我最终会使用“;引号"在我的HTML中
- 为什么我的动画"重放的“;当通过innerHTML添加元素时
- "chrome.permissions不可用”;为我的扩展请求可选权限时
- 为什么我的javascript Promise被困为"“待定”;
- 我的javascript"幻灯片放映”;不起作用
- 我的onsubmit=“;return onNewUserRegistrationCheck(this)"仍然
- "class是一个保留的标识符“;我的javascript出了什么问题
- 我有一个onload=“;setDate()"在<身体>html文档的标记.为什么它没有用我的Js
- "+"我的行为很奇怪
- 如何删除"在javascript中从我的Json