诸位大神,我今天在看jquery的源码时看到了这么一个函数:
trim: function( text ) { return text == null ? "" : ( text + "" ).replace( rtrim, "" ); }
其中的rtrim是jquery中的一个正则表达式:
rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" )
我大概能够猜出这个表达式的作用,但是实在是看不懂为什么这么写,希望有人能给我解答一下这段正则。
上面一段代码 trim 函数的定义出自 /src/core.js,这个文件里面:
而下面一段代码出自 /external/sizzle/dist/sizzle.js,这个文件里面的 rtrim 是另外的用途。