• Реализация Angular ng-repeat директивы. Что не так?

    @Memfisrain Автор вопроса
    смотрел, но там функционала в этой директиве намного больше, и разобраться толком так и не удалось.
  • Реализация Angular ng-repeat директивы. Что не так?

    @Memfisrain Автор вопроса
    разобраться с ng-repeat директивой
  • Как достучаться до свойства объекта Javascript из его же функции при запуске её через EventListener или зачем this === e.target?

    @Memfisrain
    В данном случае deepThought это объект, а не функция и этот объект действительно может наследовать свойства и методы от других объектов. Сейчас немного поменяю конструкцию и попытаюсь ответить на ваш вопрос.

    /* функция-конструктор объектов класса DeepThought
     * Каждый экземпляр будет иметь свое свойство answer
     * а метод alertAnswer, который находится в прототипе
     * будет общим для всех этих объектов
     */
    
    function DeepThought(answerNum) { 
      this.answer = answerNum;
    }
    
    DeepThought.prototype.alertAnswer = function() {
      alert(this.answer);
    };
    
    var deepThought = new DeepThought(42);
    
    deepThought.alertAnswer() // 42


    Только при таком использовании наследования нужный контекст в addEventListener потеряется, чтобы этого избежать нужно либо привязать контекст через bind, либо обернуть вызов в анонимную функцию обертку.
    Итого deepThought - это объект, прототип которого( свойство __proto__ или же [[Prototype]] ) ссылается на DeepThought.prototype. Если провести аналогию с Object.create(prototype) получается следующая картина: при создании new DeepThought(42) создается не пустой объект а объект со свойством answer равным аргументу функции, а prototype это в нашем случае DeepThought.prototype