Это происходит потому, что вы возвращаете результат из вашего метода, поэтому значение будет объектом {результат: 12} . Если вы хотите увидеть выполнение и отладить его, добавьте debugger;
влюбая строка, в которой вы нуждаетесь, вы можете понять, что получите;
class TestObject {
constructor(initialNumber) {
this.result = initialNumber;
}
add(number) {
this.result += number;
debugger;
return this;
}
}
const value = new TestObject(7)
.add(2)
.add(3);
debugger;
console.log(value)
с кодом, который вы написали, если вы измените Console.log(value.result)
, вы получите желаемый результат.