> 웹 프론트엔드 > JS 튜토리얼 > JavaScript 프로그래밍에서 발생하는 오류 유형은 무엇입니까? 오류 유형 소개

JavaScript 프로그래밍에서 발생하는 오류 유형은 무엇입니까? 오류 유형 소개

青灯夜游
풀어 주다: 2018-11-10 10:35:21
원래의
4533명이 탐색했습니다.

자바스크립트 프로그래밍에서 발생하는 오류 유형은 무엇인가요? 이 기사에서는 JavaScript 프로그래밍에서 발생하는 몇 가지 일반적인 유형의 오류를 소개합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다. [관련 영상 튜토리얼 추천: JavaScriptTutorial]

JavaScript 프로그래밍에는 구문 오류, 런타임 오류, 논리 오류의 세 가지 주요 유형의 오류가 있습니다.

컴파일 과정에서 어떤 자바스크립트 오류가 발견되는지 살펴볼까요?

1. 구문 오류

구문 오류는 기존 구문을 컴파일하는 동안 발생합니다. 프로그래밍 언어 및 JavaScript 구문 분석.

예 1, 다음 줄에는 닫는 괄호가 없기 때문에 구문 오류가 발생합니다.

<script type="text/javascript">

   //  window.print(;

</script>
로그인 후 복사

예 2:

123consloe.log(123)   // 未捕获的语法错误:意外标识符
console.123)          // 未捕获的语法错误: 出乎意料的数字
로그인 후 복사

JavaScript에서 구문 오류가 발생하면 구문 오류와 동일한 스레드에 포함된 코드만 영향을 받고 다른 스레드의 코드는 영향을 받습니다. 나머지 코드는 오류가 포함된 코드에 의존하지 않는다는 가정 하에 실행됩니다.

2. 런타임 오류

런타임 오류(예외라고도 함)는 JavaScript 중에 발생하는 오류입니다. 실행(컴파일/해석 후).

1. ReferenceError(ReferenceError)

ReferenceError: 존재하지 않는 변수를 참조할 때 오류가 발생합니다. 함수를 실행하거나 함수에 값을 할당할 때 발생하는 오류와 같은 할당된 개체입니다.

예를 들어 다음 상황은

//  引用了不存在的变量 
a()       // 未定义引用错误:a 未定义
console.log(b)     // 未引用引用错误:b未定义
//  给一个无法被赋值的对象赋值 
console.log("abc") = 1   // 未引用引用错误:左侧赋值无效
로그인 후 복사

2입니다. RangeError(RangeError)

RangeError: 유효한 범위를 초과하면 오류가 발생합니다. 주로 다음과 같은 상황이 있습니다:

1) 배열 길이가 음수인 경우

2), Number 객체의 메서드 매개 변수가 있는 경우 오류가 발생합니다. 범위를 초과하면 오류가 발생합니다. Error

3), 함수 스택이 최대값을 초과하면 오류가 발생합니다.

예를 들어 다음 상황은

// 数组长度为负数 
[].length = -5      // 范围错误:无效的数组长度
// Number对象的方法参数超出范围 
var num = new Number(12.34) 
console.log(num.toFixed(-1))   // 范围错误: 在Number.toFixed中,toFixEd()的数字参数必须在0到20之间。
// 说明: toFixed方法的作用是将数字四舍五入为指定小数位数的数字,参数是小数点后的位数,范围为0-20.
로그인 후 복사

3. TypeError(TypeError)

TypeError: 변수 또는 매개변수 유형이 예상되지 않을 때 발생하는 오류입니다.

예: 새 문자열 및 부울 값과 같은 기본 유형을 사용하고 객체에 존재하지 않는 메서드를 호출할 때 이 오류가 발생합니다. 새 명령의 매개변수는 생성자여야 하기 때문입니다. .

//  调用不存在的方法 
123()        // 类型错误: 123不是一个函数
var o = {} o.run()    // 类型错误: o.run 不是一个函数
// new关键字后接基本类型 
var p = new 456      // 类型错误: 456 不是构造函数
로그인 후 복사

4. URIError: URL 관련 함수의 잘못된 사용

URIError: 주로 URL 관련 함수의 매개변수가 올바르지 않기 때문입니다.

예를 들어 다음 상황은 다음과 같습니다.

decodeURI("%1")     // URIError: 在解码过程中变形了的URI
로그인 후 복사

URI 관련 매개변수가 올바르지 않을 때 발생하는 오류는 주로 다음 6가지 기능과 관련됩니다.

encodeURI , decodeURI(), encodeURIComponent(), decodeURIComponent(), escape() 및 unescape()

5, EvalError: eval() 함수 실행 오류

# 🎜🎜#EvalError: ES5 이하의 JavaScript에서는 eval() 함수가 올바르게 실행되지 않으면 evalError 오류가 발생합니다.

예를 들어 다음 상황은 다음과 같습니다.

var myEval = eval; myEval("alert(&#39;call eval&#39;)");
로그인 후 복사
이 오류는 ES5 이상의 JavaScript에서는 더 이상 발생하지 않지만 새 키워드를 통해 계속 맞춤설정할 수 있습니다. 오류 메시지 유형.

3. 논리적 오류

논리적 오류는 추적하기 가장 어려운 오류 유형일 수 있습니다. 이러한 오류는 구문이나 런타임 오류로 인해 발생한 것이 아닙니다. 오히려 스크립트를 구동하는 논리에 실수가 있어 예상한 결과를 얻지 못할 때 발생합니다.

요약: 위 내용은 이 글의 전체 내용이며, 모든 분들의 공부에 도움이 되길 바랍니다.

위 내용은 JavaScript 프로그래밍에서 발생하는 오류 유형은 무엇입니까? 오류 유형 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿