“Javascript好的部分”中有一些部分我无法理解
String.method('deentityify',function(){
var entity = {
quot: '""',
lt: '<',
gt: '>'
};
return function(){
return this.replace( /&([^&;]+);/g ,
function(a,b){ <-- this line --->
var r = entity[b];
return typeof r === 'string' ? r : a ;
}
);
};
}());
此函数如何获取其参数(a,b)
function(a,b){ <-- this line --->
var r = entity[b];
return typeof r === 'string' ? r : a ;
}
我已经在Mozilla MDN中阅读了这一部分,但我也无法理解:((
所以任何人都可以为我清除它:)
谢谢
答案 0 :(得分:0)
正则表达式允许您使用括号对结果进行分组。
所以this.replace( /&([^&;]+);/g
给你第一个参数匹配的子字符串,第二个参数给你括号内的匹配。
看这里: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replace
在Specifying a string as a parameter
部分,您将找到详细说明。