replace()可以接受回调函数
来源:互联网 发布:阿里云资源编排 编辑:程序博客网 时间:2024/06/06 01:28
这是JavaScript最鲜为人知的秘密之一,v1.3中首次引入。大部分情况下,replace()
的使用荧光类似下面:
alert('10 13 21 48 52'.replace(/\d+/g, '*')); //用 * 替换所有的数字
这是一个简单的替换,一个字符串,一个星号。但是,如果我们希望在替换发生的时候有更多的控制,该怎么办呢?我们只希望替换30以下的数值,该怎么办呢?此时如果仅仅依靠正则表达式是鞭长莫及的。我们需要借助回调函数的东风对每个匹配进行处理。
alert('10 13 21 48 52'.replace(/\d+/g, function(match) { return parseInt(match) < 30 ? '*' : match;}));
当每个匹配完成的时候,JavaScript应用回调函数,传递匹配内容给match
参数。然后,根据回调函数里面的过滤规则,要么返回星号,要么返回匹配本身(无替换发生)。
如下截图:
0 0
- replace()可以接受回调函数
- jquery回调函数接受服务器端返回的数据
- js replace进阶之正则和回调函数
- 可以利用括号运算符重载实现 回调函数
- 让成员函数可以成为回调函数
- 类的成员函数是否可以做为回调函数?
- 自定义可以编辑内容的Dialog(回调函数)
- .NET 回调函数
- 回调函数
- 回调函数
- 回调函数概念
- 回调函数
- 回调函数
- 回调函数
- 回调函数 相关
- delphi 回调函数
- 回调函数
- 回调函数
- 高阶篇:2)概念设计
- 流和序列化(二)--流的类型体系
- HDOJ(HDU).3466 Dividing coins ( DP 01背包 无后效性的理解)
- Mysql数据库表的自增主键ID号乱了,需要重新排列
- WebService入门
- replace()可以接受回调函数
- 多线程之线程同步
- 算法训练 Torry的困惑(基本型)
- git使用教程简介指令版
- 专利基本知识及撰写要求
- eclipse使用可能出现的问题(1.工作空间2.tomcat删除不能重建3导入项目报错)
- HDU 1540 Tunnel Warfare(另辟蹊径,c++ map 暴搜)
- error LNK2019: unresolved external symbol __atoi64
- 汉字站位符