当前位置: 代码网 > it编程>编程语言>Javascript > js基石系列学习之错误类型

js基石系列学习之错误类型

2024年05月15日 Javascript 我要评论
js系列大纲在使用 javascript 时,我们可能会遇到各种各样的错误,那你知道 javascript 常见的错误类型有哪些吗?今天就来看看 javascript 中常见的错误类型。1. synt

js系列大纲

在使用 javascript 时,我们可能会遇到各种各样的错误,那你知道 javascript 常见的错误类型有哪些吗?今天就来看看 javascript 中常见的错误类型。

1. syntaxerror

syntaxerror 表示语法错误。在遇到不符合语言规范的代码时抛出一个错误。

function sammy(animal) {
    if(animal == 'shark'){
        return `i'm cool`;
    } else {
        return `you're cool`;
    }
}
sammy('shark';
// output
uncaught syntaxerror: missing ) after argument list

例如,当您在编写一个函数时忘记了括号 ,)来括起您的代码,您将收到一个syntaxerror错误

function sammy(animal) {
    let animal = 'shark';
}
// output
 uncaught syntaxerror: identifier 'animal' has already been declared

当函数参数和函数体内使用相同的变量名时,您也可能会遇到此错误。

2. typeerror

typeerror 表示类型错误。当您使用不打算以特定方式使用的东西时,就会发生类型错误。例如,用螺丝刀敲钉子,而不是用锤子。

let a = 1
console.log(a()) 
//output
uncaught typeerror: a is not a function

这a是一个用值初始化的变量。您遇到了一个错误,因为您试图调用具有变量名称的函数。变量不能作为函数调用。函数和变量的工作方式不同。所以在这种情况下,你得到了一个类型错误。您使用的let变量与其类型不同。

这给了我们一个类型错误。

const a = 1
a = 2 // you reassign a const type variable again
//output
typeerror: assignment to constant variable.

在这里,我们将const类型变量重新分配a给一个新值。但是你不能像这样改变 const 变量,所以在这种情况下你会得到一个类型错误

3. referenceerror

referenceerror 表示引用错误。当找不到变量的引用、在变量作用域范围之外使用变量、使用未声明的变量时、在暂时性死区期间使用变量时都会抛出此错误。

let a = 1
console.log(b) // undefined variable used
//output
uncaught referenceerror: b is not defined

这里,a是一个用值初始化的变量。我们遇到了一个错误,因为我们试图控制台记录b不存在的变量。我们还没有声明任何这样的变量,所以我们在这里得到了一个引用错误。

if(true){
    let a = 1
}
console.log(a)
//output
referenceerror: a is not defined

在这个例子中,我们试图访问其块外的a类型变量let。解释器无法在块外找到它。这给了我们一个错误。

4. rangeerror

rangeerror 表示范围错误。将变量设置在其限定的范围之外、将值传递给超出范围的方法、调用一个不会终止的递归函数时就会抛出此错误。

5. urierror

urierror 表示 uri错误。当 uri 的编码和解码出现问题时,会抛出 urierror。javascript 中的 uri 操作函数包括:decodeuridecodeuricomponent 等。如果使用了错误的参数(无效字符),就会抛出 urierror。

以上就是js基石系列学习之错误类型的详细内容,更多关于js基石错误类型的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com