常见的低级错误

===== 写成 =

使用 Fira Code 字体解决, 然后打开 font-ligatures

  • 安装 Fira Code, -> _GitHub 链接
  • 打开 vscode 设置 JSON 文件,添加
    1
    2
    "editor.codeLensFontFamily": "Fira Code",
    "editor.fontLigatures": true,

数组越界问题

数组越界问题也是高频问题
解决方案:

  • 牢记初始下标是 0 , 最大下标是 arr.length - 1
  • 使用长度为 5 的小数组验证逻辑

死循环

循环也是问题一般是由于以下原因导致的

  • 循环内更新错误,例如没有更新循环变量或者 -- 写成了 ++
  • 错误的重置了变量
  • 跳出循环的条件错误
    解决方案:
    使用小的数据进行验证

边界情况

  • 在 javascript 中,如果对象(object)中的属性不存在则会返回 undefined
    例如:
    假设你服务器返回一个包含对象的数组, 如果里面没有一个对象,那么去则会返回 undefined
    1
    2
    3
    4
    5
    const nestObj = res[0];
    // 如果 res 为空数组
    // 此时如果在 nestObj 上使用对象方法则会发生错误
    nextObj.toString();
    // 会报错 undefined 上面没有 toString 方法
    解决方案:
    我们可以设置一个默认值解决这个问题
    1
    const nextObj = res[0] || {}
    如果使用了 typescript 则可以在配置中添加 "strictNullChecks": true