29/29 Дом, который построил Кекс

Пишет, что произошла ошибка на 13 строке.
Но в самом коде её не помечает.
Подскажите пожалуйста, почему так?


let materialPrice = {
  'wood': 1000,
  'stone': 1500,
  'brick': 2000
};

let house = {
  rooms: 10,
  floors: 5,
  material: 'wood',
  coefficient: 10.5
  
  calculateSquare: function () {
    return this.rooms * this.coefficient * this.floors;
  },
  calculatePrice : function () {
    return materialPrice[this.material] * this.calculateSquare();
  }
    
    
};




Нет запятой после coefficient: 10.5

1 лайк

Задание выполнил но есть вопрос!!!
Вот мой код:

let materialPrice = {
‘wood’: 1000,
‘stone’: 1500,
‘brick’: 2000
};

let house = {
rooms: 10,
floors: 5,
material: ‘wood’,
coefficient: 10.5,

calculateSquare : function () {
return this[‘rooms’]*this[‘coefficient’]*this[‘floors’];
},

calculatePrice : function () {
return this.calculateSquare()*materialPrice[this[‘material’]];
}
};

Вопрос в том, почему не работает код если последний метод

calculatePrice : function () {
return this.calculateSquare()*materialPrice[this['material']];

}

я запишу используя " скобочную нотацию", т.е. запишу таким образом результат работы предыдущего метода?

calculatePrice : function () {
return this['calculateSquare()']*materialPrice[this['material']];

}

Проверка пишет что “стоимость: NaN”.