1
제 생성자와 함께 메서드 체이닝을 수행하려고하는데, 어떻게해야하는지 정확히 알지 못합니다. 여기까지 내 코드는 다음과 같습니다.JavaScript의 생성자 및 메서드 체이닝
function Points(one, two, three) {
this.one = one;
this.two = two;
this.three = three;
}
Points.prototype = {
add: function() {
return this.result = this.one + this.two + this.three;
},
multiply: function() {
return this.result * 30;
}
}
var some = new Points(1, 1, 1);
console.log(some.add().multiply());
add 메서드의 반환 값에 대해 multiply 메서드를 호출하려고합니다. 내가하는 것이 아니라는 것을 분명히 알지만, 그것이 무엇인지는 확실하지 않습니다.
의견이 있으십니까?
아를, 물론. 완벽 했어, 내가 찾고 있었던거야. 나는 왜 거기에'.result'가 있는지 궁금합니다. 나는 그것이'result' 속성을 반환한다는 것을 안다. 그러나, 어떻게? – Sethen
@Sethen : 음, Sidharth의 좋은 편집. .multiply() 호출이 끝나면 Point 인스턴스를 반환하고 해당 객체에서 .result 속성을 확인하여 결과 속성의 현재 값을 제공합니다. – BuddhiP
@Sethen :'.multiply()'는 'this'를 반환합니다. 그래서'this.result' 나'some.result'에 접근하는 것과 같습니다. '.add'는'this'도 반환하므로, 객체의 속성 인'multiple'을 호출 할 수 있습니다. 그건 같은거야. –