解析器错误里的“Expected parenthesis open but got identifier”挺常见,尤其你写 Python 或 JavaScript 写多了,括号一多,眼睛容易飘。有时候明明是想调函数,结果不小心把括号漏了,就被 parser 一顿骂。其实问题不难找,耐心点,看看是不是把 foo 写成了 foo bar,该有括号的地方,居然是个标识符。

函数调用里的左括号漏了,在 Python 中最容易出错,比如你写了 print "Hello" 而不是 print("Hello")。JavaScript 也类似,alert 'hi' 也会挂。嗯,习惯用 IDE 的话,一般会有括号匹配提示,省事不少。

排查时记得:看下报错的行号,往前后几行一翻;括号要配对,圆括号、方括号、花括号都得数清楚;有时候是你写得太随意,比如把变量名和函数名搞混了,像 data fetch() 这种。

还有个技巧:多用点编辑器的高亮或自动闭合功能,像 VS Code 的高亮括号、格式化快捷键,真能救命。如果你刚好在啃 JavaScript 的作用域问题,也可以顺带看看这个变量提升的,还挺清楚的。

,这种错误说大不大,说小也不小。早点发现,早点改,后面跑得才顺。如果你老是碰上类似问题,可以考虑在保存时自动 lint 一下代码,或者开启实时语法检查,挺省心的。