Когда использовать это в JavaScript OO?

Можно использовать следующую команду:
:%s/^V^M//g
, где '^' означает использование CTRL ключ.

8
задан Artem Barger 17 July 2009 в 17:15
поделиться

6 ответов

Когда дело доходит до «объектно-ориентированного» JavaScript, вот хорошее руководство, Марк Дикинсон, здесь, по SO, связанное с: Частные члены в JavaScript . В нем подробно рассказывается о некоторых других вещах, которые вам сейчас действительно не нужны, но как только вы поймете, как работает JavaScript, вы увидите, что он сильно отличается от вашего обычного объектно-ориентированного языка, когда дело касается таких вещей, как это действительно означает.

Я бы сказал, что в вашем случае вам обязательно следует использовать this , но, возможно, ваши функции должны быть в prototype части вашего " class "(это позволяет избежать переопределения функции каждый раз при создании нового экземпляра.)

6
ответ дан 5 December 2019 в 21:21
поделиться
1
ответ дан 5 December 2019 в 21:21
поделиться

Просто чтобы подчеркнуть и посочувствуйте предыдущему ответу @ tj111, я предлагаю вам прочитать this . Чтобы лучше понять область действия функций.

0
ответ дан 5 December 2019 в 21:21
поделиться

В данном конкретном случае лучше использовать саморегулирующуюся переменную вместо this , чтобы предотвратить путаницу и головную боль внутри функций.

function Foo()
{
   var self = this;

   this.bar= function()
   {
      alert('bar');
   }

   this.baz= function()
   {
     self.bar();
   }
}

Причина этого. потому что, поскольку все в javascript является объектом, ключевое слово this внутри функции относится к родительской функции. Определив переменную в определенной области, вы гарантируете, что переменная сохранит свою область видимости.

0
ответ дан 5 December 2019 в 21:21
поделиться

Правильная версия - это та, которая не выдает ошибку при попытке вызвать функцию. Если опустить этот , вы получите исключение ReferenceError .

0
ответ дан 5 December 2019 в 21:21
поделиться

В другом посте о «псевдониме функций» в JavaScript я подробно объяснил с примерами, как «this» работает в JavaScript. Думаю, это может быть вам полезно.

Пожалуйста, проверьте: Похоже, что псевдонимы функций JavaScript не работают

0
ответ дан 5 December 2019 в 21:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: