Дугласа Crockford Javascript хорошие части
Реализации толчке
Array.method('push', function() {
this.splice.apply(
this,
[this.lenght, 0].concat(Array.prototype.slice.apply(arquments));
return this.length;
});
Позволяет анализировать это с следующим примером: У меня есть массив из 10 элементов и хотите добавить следующий элемент значения 11.
Array.method('push', function() {
this.splice.apply(
this,
[10, 0].concat([11]);
return this.length;
});
, что дает мне
Array.method('push', function() {
this.splice.apply(this,[10, 0, 11]);
return this.length;
});
Так что я понимаю, это будет сделать это: MyInitialArray.splice (10,0,11), который будет просто найти элемент в 10 положении, не удалить ничего и добавить элемент значения 11 рядом это правильно?
Так что мой главный вопрос, почему имеет не быть конструкция с двойным этой
как: this.splice.apply (это, ... ??
вопрос предложения этого типа здесь просили, но там нет ответить на мой вопрос о двойных this.splice.apply(this
this.apply method with this as parameter
другими словами:
Если я позвоню this.splice, сращивания будет выполнять с это Allready, так почему там нужно пройти один и тот же это с применить?
Поскольку вы спросили [это ранее] (http://stackoverflow.com/questions/34545772/this-applay-this) (теперь удалены) и были закрыты как дубликат вопроса, на который вы сейчас ссылаетесь, могут вы объясните, почему вы думаете, что ваш вопрос не ответил в [другом вопросе] (http://stackoverflow.com/questions/33768810/this-apply-method-with-this-as-parameter)? –
Здесь нет настоящей «необходимости» для двойного 'this'. Возможно, это было '[] .splice.apply (это', но это не улучшилось бы. –
@JamesThorpe, потому что это не ответ для моего поиска в возможном дубликате – kosnkov