最容易理解递归过程的图 1234567891011121314151617parseExpression(LOWEST)└── left = IntegerLiteral(1)└── peekToken = + └── parseInfixExpression(left = 1) └── parseExpression(SUM) // ← 递归 └── left = IntegerLiteral(2) └── peekToken = + (优先级 SUM == SUM,不进入 for 循环) ← return 2 ← return (1 + 2)← 回到最初的 parseExpression(LOWEST),继续 while └── peekToken = + └── parseInfixExpression(left = (1 + 2)) └── parseExpression(SUM) └── return IntegerLiteral(3) ← return ((1 + 2) + 3)← return ((1 + 2) + 3)