JavaScript中的ReferenceError和TypeError等错误的区别

作为前端工作人员,在调试JavaScript程序的时候经常遇到两个错误:ReferenceError和TypeError。下面就对我这两种错误说说我的见解 
1.首先:字面上的意思分别为引用错误和类型错误; 
2.作用域:ReferenceError就是在作用域中找不到、TypeError是在作用域中找到了但是 做了它不可能做的事情。
if (true) {
  const MAX = 5;
}

MAX // Uncaught ReferenceError: MAX is not defined
if (true) {
  console.log(MAX); // ReferenceError
  const MAX = 5;
}
const foo = {};

// 将 foo 指向另一个对象,就会报错
foo = {}; // TypeError: "foo" is read-only
const foo;
// SyntaxError: Missing initializer in const declaration

 

posted @ 2021-02-25 18:35  庄翠的博客  阅读(585)  评论(0编辑  收藏  举报