JavaScript调试常见报错及原因有哪些

工具使用   发布日期:2025年03月19日   浏览次数:391

这篇文章主要讲解了“JavaScript调试常见报错及原因有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“JavaScript调试常见报错及原因有哪些”吧!

测试环境 chrome 版本 66.0.3359.170(正式版本) (64 位)

TypeError 类型错误

不是操作符所接受的数据类型。

  1. //-------- 把不是函数的值当做函数调用
  2. var foo = undefined;
  3. foo();
  4. // Uncaught TypeError: foo is not a function
  5. // foo 不是一个函数
  6. //-------- 调用对象中不存在的函数, 其实就是 undefined
  7. var x = document.getElementByID('foo');
  8. // Uncaught TypeError: document.getElementByID is not a function
  9. // 调用的值不是一个函数
  10. //-------- 调用未声明的方法
  11. lala();
  12. // Uncaught ReferenceError: lala is not defined
  13. // lala 没有定义
  14. //-------- 把 null 或 undefined 当成对象
  15. var someVal = null;
  16. someVal.foo;
  17. // Uncaught TypeError: Cannot read property 'foo' of null
  18. // 无法读取 null 的 foo 属性
  19. var someVal = undefined;
  20. someVal.foo;
  21. // Uncaught TypeError: Cannot read property 'foo' of undefined
  22. // 无法读取 undefined 的 foo 属性

ReferenceError 引用错误

尝试给不能赋值的变量进行赋值。

  1. //-------- 尝试给不能赋值的变量进行赋值。
  2. function doSomething(){};
  3. doSomething() = 'somevalue'
  4. // Uncaught ReferenceError: Invalid left-hand side in assignment
  5. // 赋值符的左侧无效

RangeError 范围错误

设定的值在该数据类型的范围内。如数字的范围、数组长度的范围。

  1. [].length = -1 // 数据的 length 不能小于 0
  2. [].length = undefined //
  3. // Uncaught RangeError: Invalid array length
  4. // 无效的数组长度

SyntaxError 语法错误

无法解析的代码。

  1. //-------- 拼接字符串,但是没有使用 + 号
  2. 'ni' 'hao'
  3. // Uncaught SyntaxError: Unexpected string
  4. // 意料之外的字符串
  5. //-------- 没有使用成对的引号
  6. var str = 'ni hao
  7. // Uncaught SyntaxError: Invalid or unexpected toke
  8. // 无效或意料之外的标记
  9. //-------- 无效的正则
  10. var reg = /[/
  11. // Uncaught SyntaxError: Invalid regular expression: missing /

以上就是JavaScript调试常见报错及原因有哪些的详细内容,更多关于JavaScript调试常见报错及原因有哪些的资料请关注九品源码其它相关文章!