私は現在、このjquery masking pluginを読んでいて、それがどのように動作するかを理解しています。また、多数の場所で、引数を渡さないでslice()
関数を呼び出します。例えば、_buffer
変数はslice()
dであり、_buffer.slice()
と_buffer
は同じ値を保持しているようです。引数なしのJavascript slice()メソッドを使用する
これを行う理由はありますか、コードをもっと複雑にするだけの作者ですか?
//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();
}
}
プログラマーは、必要以上に複雑なコードを作成することはありません。 – alex
それは必要です。 'slice'メソッドは関数の最初に、関数によって変更される前に元の配列項目をバックアップするために使用されています。この方法では、作成者は編集後および編集中に元の配列の位置、キーおよび値にアクセスできます。アレイ。これは、プラグインの例として責任ある文字列操作インタフェースを作成する際に不可欠です。 @ alexのコメントを補完する、それがあればそれには理由がある。 Ctrl + Fキーを押してソースを確認し、後でアクセスする場所を探します。 –
'//機能fn'? – Ben