Нужно чтобы метод upPrice изменял price

Рейтинг: 0Ответов: 2Опубликовано: 05.02.2023
let obj ={
            price: 10,
            upPrice:function (value) {
                    price += value  
            }

        }

Ответы

▲ 0Принят

Нужно добавить this, чтобы сослаться на данный экземпляр объекта:

let obj = {
    price: 10,
    upPrice:function (value) {
        this.price += value  
    }
}

obj.upPrice(16);
console.log(obj.price);

▲ 0

Забыли про this. Без него вы будете обращаться к локальной или глобальной переменной price и получать ошибку, если таковой не найдётся. this.price будет изменять именно поле данного объекта.

let obj = {
  price: 10,
  upPrice(value) {
    this.price += value
  }
}