我目前正在通读这个jquery masking plugin以尝试了解它是如何工作的,并且在许多地方,作者调用了slice()
没有参数传递给它的函数。例如,这里的_buffer
变量是slice()
d,_buffer.slice()
并且_buffer
似乎保持相同的值。
这样做有什么理由,还是作者只是让代码比它应该的更复杂?
//functionality fn
function unmaskedvalue($input, skipDatepickerCheck) {
var input = $input[0];
if (tests && (skipDatepickerCheck === true || !$input.hasClass('hasDatepicker'))) {
var buffer = _buffer.slice();
checkVal(input, buffer);
return $.map(buffer, function(element, index) {
return isMask(index) && element != getBufferElement(_buffer.slice(), index) ? element : null; }).join('');
}
else {
return input._valueGet();
}
}