@ilanagrk
front-end developer

Наследование в JS. Почему выдает false?

function Animal(name) {
        this.name  = name;
    }
    Animal.prototype.getName = function() {
        var animalName = this.name;
        console.log(animalName);
    };
    function Dog(name) {
        this.name  = name;
    }

    Dog.prototype = Object.create(Animal.prototype);
    Dog.prototype.constructor = Dog;

    Dog.prototype.bark = function() {
        console.log('Dog ' + this.name +' is barking');
    };
var dog = new Dog ('Doggy');
dog.getName () === 'Doggy'; // получаю false
dog.bark () === 'Dog Doggy is barking'; // получаю false


Почему получается false, хотя параллельно в консоль лог выводится Doggy и Dog Doggy is barking?
  • Вопрос задан
  • 60 просмотров
Решения вопроса 1
pterodaktil
@pterodaktil
js developer
Animal.prototype.getName = function() {
        var animalName = this.name;
        console.log(animalName);
        return animalName;
    };

потому что функция ничего не возвращает (undefined !== 'Doggy')
с bark() аналогично
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы