逗号运算符作为回报
Comma operator in return
我正在从一页阅读JS,这就是我发现的(源代码被谷歌Chrome开发工具混淆了):
var db = function(a) {
return a.replace(/[^'w's'.'|`]/g,
function(b) {
return "''" + b
})
};
第一个逗号运算符操作数(a.replace()
操作数)有什么技巧吗?
在我看来,a.replace(/[^'w's'.'|``]/g,
部分是完全多余的,可以删除。
我错过了什么吗?
它不是逗号运算符,而是调用.replace
的简单参数列表 - 请注意括号。
你的去混淆器最好像这样缩进它:
return a.replace(/[^'w's'.'|`]/g, function(b) {
return "''" + b;
});
顺便说一句,该函数可以用简单的字符串"''$&"
代替。
没有逗号运算符。
请参阅有关替换的文档
newstring = str.replace(regexp, function);
格式不佳使其难以阅读。
它基本上在做
a.replace(/([^'w's'.'|`])/g, "''$1");
相关文章:
- 这是什么 ==- javascript 运算符
- 我的职位回报太快了,如何做出承诺
- jQuery/JS包含运算符或类似运算符
- Javascript逻辑运算符和字符串/数字
- 模运算符前的双水平线
- 在承诺链中处理早期回报的最佳方式
- jQuery's trim()的前缀为not运算符
- Javascript,如果条件在没有&&逻辑运算符当&&它不起作用
- 如果在构造函数中有“返回”,则在 JavaScript 中的新运算符中做了什么
- 如何使用排列运算符来获取具有命名参数的函数的所有参数
- JavaScript 中三元条件和逻辑和运算符的运算符优先级
- 用于验证JS中逻辑运算符表达式的正则表达式
- 什么's是相当于LINQ's SelectMany运算符
- JavaScript-===vs===运算符性能
- 在 Jquery/Javascript 中使用多个 OR (||) 运算符时如何设置变量
- 三元运算符检查多个字符串
- 调用C++中JScript中的instanceof运算符(IDispatch/IDispatchEx)
- ||(OR)运算符如何在赋值中工作
- 在 JavaScript 对象中设置要使用的运算符的属性
- 逗号运算符作为回报