java 字符串格式化函数_[Java教程]JavaScript 实现格式化字符串函数String.format (可自动解析引号转义字符)...

[Java教程]JavaScript 实现格式化字符串函数String.format (可自动解析引号转义字符)

0 2016-12-16 15:03:32

在js开发中,我们可能会遇到这样一个问题

当需要通过js动态插入html标签的时候

特别是当遇到大量的变量拼接、引号层层嵌套的情况,会出现转义字符问题,经常出错

我们来看个例子

运行直接报错

bc91bb04e6e9c61e24c974e4440db8f2.gif

接下来把转义字符\"改成\'试下

运行之后,发现仍然无法正常显示

这样的代码不光看起来杂乱无章、难以维护,关键是很容易出错

接下来我们开始封装格式化字符串方法

String.js(function () { /// /// 引号转义符号 /// String.EscapeChar = '\''; /// /// 替换所有字符串 /// /// 检索值 /// 替换值 String.prototype.replaceAll = function (searchValue, replaceValue) { var regExp = new RegExp(searchValue, "g"); return this.replace(regExp, replaceValue); } /// /// 格式化字符串 /// String.prototype.format = function () { var regexp = /\{(\d+)\}/g; var args = arguments; var result = this.replace(regexp, function (m, i, o, n) { return args[i]; }); return result.replaceAll('%', String.EscapeChar); }})();

通过占位符传递变量值,用%替代了引号转义符,代码简洁了很多,也非常方便维护,出错的机率也小了很多

看下测试效果

bc91bb04e6e9c61e24c974e4440db8f2.gif

测试结果正确,并且点击事件中也正确接收到了参数值

demo下载

本文网址:http://www.shaoqun.com/a/269250.html

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:admin@shaoqun.com。

JavaScript

0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值