思路
没啥好说的——栈的最基本理解
js的栈实现是利用Array的push和pop……
function calPoints(ops: string[]): number {let sta: Array<number> = []ops.forEach((data: string) => {switch (data) {case '+':sta.push(sta[sta.length - 1] + sta[sta.length - 2])breakcase 'D':sta.push(sta[sta.length - 1] * 2)breakcase 'C':sta.pop()breakdefault:sta.push(Number(data))}})return sta.reduce((result: number, index: number) => {return result + index})}console.log(calPoints(['5', '-2', '4', 'C', 'D', '9', '+', '+']))
