一个JS字符串替换问题,在线等

咸鱼boris 2011-09-27 04:40:46
字符串为:
var str = "<option a='{0} b='{1}' value='{0}'>{2}</option>";

我要把字符串中的{0},{1},{2}替换为0,1,0,2,我目前的实现写法是:

var str = "<option a='{0} b='{1}'>{2}</option>";
while(/(\{(\d)\})/g.test(str)){
str = str.replace(RegExp.$1,RegExp.$2);
}
alert(str);


需要注意的是:<option a='{0} b='{1}'value='{0}'>{2}</option>这个option中的自定义属性个数不是固定的
可能没自定义属性,比如:<option value='{0}'>{2}</option>


感觉效率比较次,求效率更高的写法,各位大虾帮忙啊
...全文
81 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
咸鱼boris 2011-09-27
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 knightzhuwei 的回复:]

引用 5 楼 sharkdbj 的回复:

引用 2 楼 knightzhuwei 的回复:

在这种地方追求这点效率毫无意义

那如果是多个级联动态下拉列加载的情况呢,而对于每次的拼装都要做这样的字符串替换是不是会影响响应时间呢

一般多级联动的相应时间取决于和后台的AJAX交互上 而不是字符串替换的效率
[/Quote]
哦,明白了,谢谢指教,学习了
咸鱼boris 2011-09-27
  • 打赏
  • 举报
回复
谢谢三楼四楼,学习了,我replace用的比较挫,惭愧啊,结贴给分
knightzhuwei 2011-09-27
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 sharkdbj 的回复:]

引用 2 楼 knightzhuwei 的回复:

在这种地方追求这点效率毫无意义

那如果是多个级联动态下拉列加载的情况呢,而对于每次的拼装都要做这样的字符串替换是不是会影响响应时间呢
[/Quote]
一般多级联动的相应时间取决于和后台的AJAX交互上 而不是字符串替换的效率
咸鱼boris 2011-09-27
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 knightzhuwei 的回复:]

在这种地方追求这点效率毫无意义
[/Quote]
那如果是多个级联动态下拉列加载的情况呢,而对于每次的拼装都要做这样的字符串替换是不是会影响响应时间呢
javascript_2011 2011-09-27
  • 打赏
  • 举报
回复
var str = "<option value='{0}'>{2}</option>";
var re = /{(\d)}/g;
alert(str.replace(re,"$1"));
2011-09-27
  • 打赏
  • 举报
回复

var str = "<option a='{0} b='{1}' value='{0}'>{2}</option>";
str = str.replace(/{(\d+)}/g, "$1");
alert(str);
knightzhuwei 2011-09-27
  • 打赏
  • 举报
回复
在这种地方追求这点效率毫无意义
咸鱼boris 2011-09-27
  • 打赏
  • 举报
回复
自己顶起!~~~

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧