• JavaScript 调试常见报错以及原因


    JavaScript 调试常见报错以及原因

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

    TypeError 类型错误

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

      //-------- 把不是函数的值当做函数调用
      var foo = undefined;
      foo();
      // Uncaught TypeError: foo is not a function
      // foo 不是一个函数
    
      //-------- 调用对象中不存在的函数, 其实就是 undefined
      var x = document.getElementByID('foo');
      // Uncaught TypeError: document.getElementByID is not a function
      // 调用的值不是一个函数
    
      //-------- 调用未声明的方法
      lala();
      // Uncaught ReferenceError: lala is not defined
      // lala 没有定义
    
      //-------- 把 null 或 undefined 当成对象
      var someVal = null;
      someVal.foo;
      // Uncaught TypeError: Cannot read property 'foo' of null
      // 无法读取 null 的 foo 属性
    
      var someVal = undefined;
      someVal.foo;
      // Uncaught TypeError: Cannot read property 'foo' of undefined
      // 无法读取 undefined 的 foo 属性
    

    ReferenceError 引用错误

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

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

    RangeError 范围错误

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

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

    SyntaxError 语法错误

    无法解析的代码。

      //-------- 拼接字符串,但是没有使用 + 号
      'ni' 'hao'
      // Uncaught SyntaxError: Unexpected string
      // 意料之外的字符串
    
      //-------- 没有使用成对的引号
      var str = 'ni hao
      // Uncaught SyntaxError: Invalid or unexpected toke
      // 无效或意料之外的标记
    
      //-------- 无效的正则
      var reg = /[/
      // Uncaught SyntaxError: Invalid regular expression: missing /
    
  • 相关阅读:
    2015年第5本(英文第4本):Death on the Nile尼罗河上的惨案
    2015年第4本(英文第3本):Godfather教父
    2015年第3本(英文第2本):Daughter of Deceit
    2015年第2本(英文第1本):《The Practice of Programming》
    2015年第1本读书行动笔记:《把你的英语用起来》
    GTD桌面2.0
    独立博客开张!有关读书、GTD和IT方面的内容将发布在新网站上
    2015计划
    Swift
    Swift
  • 原文地址:https://www.cnblogs.com/daysme/p/9045407.html
Copyright © 2020-2023  润新知