2023-10-14 13:27 /
本文仅发表于班固米

----------

1. 第一印象
JavaScript 给我的第一印象是看起来跟 C++ 极其相似(但背后有一个很大的区别是解析 vs. 编译)。由于我在2015年接触的第一门编程语言就是 C++,我只花了两天就顺利入门了 JavaScript。

但由于我在2020年前后一段时间热衷于已经过时的 Visual Basic 语言,而该语言与 C++ 相去甚远,我最近不得不花了点时间重新适应 C++ 的语法。一个典型的例子:

Visual Basic:If ??? Then ??? Else ??? End If
JavaScript / C++:if(???) {???;} else {???;}

2. 容易犯错的地方
目前为止我已经写了两个简单的 web app,在此总结一下这期间经常踩的坑。
2.1. JavaScript 对象的声明中,花括号内要用冒号(而非等号)、逗号(而非分号),且末尾不要加逗号。
2.2. 引号内的内容如果还有引号,须使用单引号。如果是字符串里面的引号,则使用转义符。
2.3. setInterval 函数需要一个变量来承载,否则无法被解除!
2.4. 测试的时候如果遇上按钮忽然没法点击的情况,不要怀疑是性能问题。右键审查元素,几乎肯定是因为它被透明元素意外遮挡住了。
2.5. 注意区分 undefined 与 null。
2.6. 「typeof(var) == "undefined"」可被「var == undefined」替代,因此是多此一举。

3. 一些入门内容
3.1. 如何在 nav 栏高亮显示用户滚动到的当前 section