replace(s1,s2)传进去是什么啊

whos2002110 2012-12-14 04:51:45
function Tp(temp, dataarry) {
return temp.replace(/\$\{([\w]+)\}/g, function(s1, s2) { var s = dataarry[s2]; if (typeof (s) != "undefined") { return s; } else { return s1; } });
}
...全文
299 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
whos2002110 2012-12-15
  • 打赏
  • 举报
回复
引用 6 楼 calmcrime 的回复:
s1 表示 正则匹配的内容 s2 表示 正则表达式 第一个捕获组的内容,即 正则里 括号里匹配的内容。
谢谢,不过你的意思我没看太懂,但是s2应该是指正则表达式匹配到的内容在temp中出现的位置,相当于indexof
xwbb123 2012-12-14
  • 打赏
  • 举报
回复
temp 是传进来的字符串,replace(a,b)是通过a这个正则表达式查找出来的内容,把这个内容替换成 b字符串,一句话:也就是把temp这个字符串中匹配a的正则的字符串替换成b。 而你上面的代码好像是 b的内容是由 dataarray来决定的,当s的类型不为undefined式 b=s; 当s的类型为undefined的时候,b=s1;
001007009 2012-12-14
  • 打赏
  • 举报
回复
s1 表示 正则匹配的内容 s2 表示 正则表达式 第一个捕获组的内容,即 正则里 括号里匹配的内容。
whos2002110 2012-12-14
  • 打赏
  • 举报
回复
引用 4 楼 q2979978 的回复:
引用 3 楼 whos2002110 的回复:上面replace里面那个函数具体是什么意思, 它让replace怎么工作lz不喜欢看文档,查api吗?
看过了,还是不懂,上面的代码
jeff_jiang 2012-12-14
  • 打赏
  • 举报
回复
引用 3 楼 whos2002110 的回复:
上面replace里面那个函数具体是什么意思, 它让replace怎么工作
lz不喜欢看文档,查api吗?
whos2002110 2012-12-14
  • 打赏
  • 举报
回复
上面replace里面那个函数具体是什么意思, 它让replace怎么工作
whos2002110 2012-12-14
  • 打赏
  • 举报
回复
function Tp(temp, dataarry) { return temp.replace(/\$\{([\w]+)\}/g, function(s1, s2) { var s = dataarry[s2]; if (typeof (s) != "undefined") { return s; } else { return s1; } }); }
jeff_jiang 2012-12-14
  • 打赏
  • 举报
回复
http://www.jb51.net/w3school/js/jsref_replace.htm 给你个w3school的看看吧

87,907

社区成员

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

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