我是一个初学者,可以成功解决我的代码。我很高兴找到它,但是花了我很长时间。我希望了解它发生的原因。

这是 buggy 的原始代码。假设已经为变量[nextAlpha]分配了字符串值:

nextAlpha.toUpperCase();

通过一些创造性的测试,我能够确定这是导致问题的根源。我以为也许实际上没有更新变量[nextAlpha]的值。我试了一下,它起作用了:
nextAlpha = nextAlpha.toUpperCase();

我已经省去了其余的代码,但是假设[var = nextAlpha]已经在脚本的顶部声明了,我认为这意味着“全局”。有了这些信息,我认为只需在变量上调用方法就足够了。为什么不像我执行额外步骤将字符串“更新”为大写字母一样,将其重新分配给原始[nextAlpha]字符串呢?

最佳答案

toUpperCase将转换后的字符串作为新对象返回-它不对nextAlpha执行转换。

从Mozilla引用资料:



reference

10-08 00:28