缺点和替代方案 - JS方法链接
Downsides & Alternatives - JS method chaining
我在编写的一些代码中正在做一些类似的事情
txt = txt.replaceAll(''n','').replaceAll('<b>','[bold]').replaceAll('</b>','[/bold]')
.replaceAll('<strong>','[bold]').replaceAll('</strong>','[/bold]')....
其中 replaceAll 是一个 String.prototype 扩展。 这很有效,但我想知道 -
以这种方式链接太多方法有什么缺点吗? 使用在"oner"中完成工作的正则表达式会更好吗? 如果是这样,正则表达式会是什么样子?(我对正则表达式不是很擅长)
这
很好。正则表达式替代方案也非常简单,您基本上只需要使用交替并确保转义需要转义的内容:实时示例 |实时源码
var replacements = {
''n': '',
'<b>': '[bold]'
'</b>': '[/bold]',
'<strong>': '[bold]',
'</strong>': '[/bold]'
// ...
};
txt = txt.replace(/'n|<b>|<'/b>|<strong>|<'/strong>/g, function(m) {
return m in replacements ? replacements[m] : m;
});
将它们链接在一起是可以的。但不要把它们都放在一行上。如果重新格式化代码,则更容易阅读:
txt = txt
.replaceAll( ''n', '' )
.replaceAll( '<b>', '[bold]' )
.replaceAll( '</b>', '[/bold]' )
.replaceAll( '<strong>', '[bold]' )
.replaceAll( '</strong>', '[/bold]' );
同样的风格在jQuery链中很有用:
$('<div>Test</div>')
.css({ fontSize: '16px' })
.attr({ title: 'Test' })
.appendTo( 'body' );
相关文章:
- 当用户点击动态创建的链接时,如何调用JS方法.JQuery,ASP.NET MVC
- JS方法显示了未定义的简单示例
- 如何从方法内部获取js方法名称
- 如何在Spotify应用程序中创建discincts JS方法
- 正在寻找特定的JS方法来确认单选按钮的选择
- jquery在上下文中调用JS方法
- js方法链尾
- JS方法绑定与2个不同的这个
- Wy js 方法 toFixed() 返回 NaN
- 从链接调用 js 方法
- 正确的方法是什么,使用THREE.js方法来计算相机的偏航
- 为什么 findRandom() mongoose for node.js 方法不起作用
- Node.js 方法不返回任何响应,挂起请求
- 缺点和替代方案 - JS方法链接
- Rhino API-使用org.mozilla.javascript.Context访问js方法
- jQuery/JS方法链接
- 通过ajax调用从js方法返回值到REST服务
- 在JS方法asp.net C#中获取变量的内容
- 从复杂对象中提取选定数组和属性的JS方法/lib
- UIWebView elementFromPoint js方法return'错误'要素