Ошибка на объектах и ​​методах в Javascript - PullRequest
0 голосов
/ 18 ноября 2011

Я только начал с ООП на Javascript. Я новичок в мире программирования. Не могли бы вы помочь мне в следующем коде? Мой текстовый редактор показывает синтаксическую ошибку в блоке else.

function Dog(name, breed, weight) {
    this.name = name;
    this.breed = breed;
    this.weight = weight;
    this.bark = function () {
        if (this.weight > 25) alert(this.name + " says Woof")
    } else {
        alert(this.name + " says Poof");
    }
}

var fido = new Dog("Fido", "Mixed", 38);

fido.bark();

Ответы [ 5 ]

2 голосов
/ 18 ноября 2011

Вам не хватает { после if (this.weight > 25), а также . между fido и bark();

function Dog(name, breed, weight){
    this.name = name;
    this.breed = breed;
    this.weight = weight;
    this.bark = function(){
        if (this.weight > 25){
            alert(this.name + " says Woof")
        } else {
            alert(this.name + " says Poof");
        }
    }
}

var fido = new Dog("Fido", "Mixed", 38);
fido.bark();
  1. Тебе нужен правильный абзац, чтобы легче видеть подобные вещи.
  2. Я думаю, что ваша жалоба времени выполнения на else, потому что она была за пределами функции и не "привязана" к if из-за пропущенных скобок.
  3. Возможно, JavaScript не является языком для изучения программирования. Ты просто играешь, чтобы учиться, или ты пытаешься что-то сделать?
1 голос
/ 18 ноября 2011

Попробуйте это

function Dog(name, breed, weight){
this.name = name;
this.breed = breed;
this.weight = weight;
this.bark = function(){
        if (this.weight > 25){
           alert(this.name + " says Woof");
        }
        else {
          alert(this.name + " says Poof");
        }
    };
}

var fido = new Dog("Fido", "Mixed", 38);

fido.bark();
1 голос
/ 18 ноября 2011
function Dog(name, breed, weight){
this.name = name;
this.breed = breed;
this.weight = weight;
this.bark = function(){
if (this.weight > 25){
alert(this.name + " says Woof")
}
else {
alert(this.name + " says Poof");
}
}
}

var fido = new Dog("Fido", "Mixed", 38);

fido bark();
1 голос
/ 18 ноября 2011
if (this.weight > 25)
   alert(this.name + " says Woof")
}
else {
  alert(this.name + " says Poof");
}

вы не открываете if {

0 голосов
/ 18 ноября 2011
if (this.weight > 25)
   alert(this.name + " says Woof")
}

, где все пошло не так, вы пропускаете {. Должно быть:

if (this.weight > 25)
{
   alert(this.name + " says Woof")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...