0
함수 RPNCalculator와 같은 배열에 대한 메서드를 만들고 있지만 어떤 이유로 올바르게 작동하지 않습니다.빼기 작업은 항상 양수 값을 반환합니다.
예를 들어, 조작 3 - 8을 수행하려고하면 -5 대신 3을 리턴하고, 3 - 4는 -1 대신 1을 리턴합니다. 당신이 안으로 볼 수 있듯이 num 변수입니다.
정말 감사드립니다.
RPN은 [2, 3, 4]
RPNCalculator.prototype.minus = function() {
\t console.log("First item " + this[this.length - 2] + "\nLast Item " + this[this.length - 1]);
/* Logs:First item 3
Last Item 4 */
\t var num = this.pop(this[this.length - 2]) - this.pop(this[this.length - 1]);
\t console.log(num); // logs 1
\t this.push(num);
};
구현 세부 정보는 확실하지 않지만 'var num = this.pop (this [this.length - 1]) - this.pop (this [this.length - 2]); – Mchl
'this [...]'를 로깅하지만'this.pop (this [...])'의 * 반환 값 *을 빼는 것에주의하십시오. 그러면 this.pop()이 정확히 무엇을 반환합니까? 그것은 무엇을합니까? 왜 그곳에 있습니까? 뭔가의'길이'를 돌려주는 것처럼 보입니다. –
일반적으로 ['pop'] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/pop)는 배열의 마지막 항목을 제거하고 그 값을 반환하고 doesn을 반환합니다 어떤 주장도하지 마라. 귀하의 구현은 그것을 전혀 변경합니까? –