我正在查看jquery源代码并注意到camelcase是:
camelCase: function( string ) {
return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase );
}
// where:
rmsPrefix = /^-ms-/,
rdashAlpha = /-([\da-z])/gi,
fcamelCase = function( all, letter ) {
return letter.toUpperCase();
}
我的问题是:为什么rdashAlpha
也会查找数字,是否有一个点在数字上调用一个touppercase?是否有一些unicode字符可以改变?
答案 0 :(得分:2)
如果您注意到,该功能还会删除连字符。不,没有必要大写数字或大写字母,但该功能旨在用第一个字符替换整个匹配(例如,“ - 2”或“ - w”或“ - W”)。
在所有内容上调用.toUpperCase()
肯定更容易,更清晰,并且可能比确定是否调用它更快。