>  기사  >  웹 프론트엔드  >  JavaScript 오류 개체 구문 분석

JavaScript 오류 개체 구문 분석

不言
不言원래의
2018-07-05 17:48:572366검색

이 글은 주로 특정 참고값을 가지고 있는 JavaScript Error 객체 분석을 소개합니다. 프로그램 비정상적인 작동 조건을 다른 프로그래밍 언어에서는 "예외" 또는 "오류"라고 합니다. 인터프리터는 각 오류 상황에 대해 오류 설명 정보가 포함된 Error 객체를 생성하고 발생시킵니다.

ECMAScript는 6가지 유형의 오류를 정의합니다. 또한 Error 생성자를 사용하여 사용자 정의 Error 개체를 만들고 throw 문을 사용하여 개체를 던질 수도 있습니다.

6개 오류:

ReferenceError: 개체를 찾을 수 없는 경우

    TypeError: 해당 유형이나 개체의 메서드를 잘못 사용한 경우
  • RangeError: 내장 개체의 메서드를 사용할 때 , 매개변수가 범위를 벗어났습니다
  • SyntaxError: 잘못된 구문
  • EvalError: 잘못된 Eval 사용
  • URIError: URI 오류
  • 2. 오류 처리
  • 비정상적인 인터럽트를 방지하는 메커니즘 이온 프로그램에 오류가 발생하더라도.

    try{
        可能发生错误的代码
    }catch(err){
        只有发生错误时才执行的代码
    }finally{
        无论是否出错,肯定都要执行的代码
    }
  • 사용 포인트:

try로 래핑된 코드는 오류가 없더라도 try가 없는 코드보다 효율성이 떨어집니다.

    try에서는 잘못될 수 있는 코드를 최대한 적게 포함하세요.
  • 미리 예측할 수 없는 오류는 try catch로 잡아야 합니다.
  • 마지막으로 생략할 수 있습니다.
  • 3. 함수 정의자가 필요한 경우 호출자에게 프로세스에서 오류를 사용하도록 알림;
  • 방법: 새 오류 발생("프롬프트 텍스트");

    // 程序猿甲:定义函数的人
    function round(num, d){
        if(!isNaN(num) && !isNaN(d)){
            num *= Math.pow(10, d);
            return num;
        }else{
            // 抛出自定义错误
            throw new Error("参数必须是数字");  
        }
    }
    
    // 程序猿乙:调用函数的人
    var d = parseInt(prompt('请输入数字'));
    try{
        alert(round(123.456, d));
    }catch(err){
        alert(err.message);  // 接住抛出的自定义错误
    }
  • 4. 예제 연습
var n = 1;
function fun(){
    try{
        n++;
        return n;
    }catch(err){    
        // 没错误,catch不执行
        n++;
        return n;    
    }finally{
        n++;
        return n;
    }
}

console.log(fun());// 3  return为finally的
console.log(n);// 3
var n = 1;
function fun(){
    try{
        n++;
        return n;
    }catch(err){
        // 没错误,catch不执行
        n++;
        return n;
    }finally{
        n++;
    }
}
console.log(fun()); // 2  return为try的
console.log(n); // 3
var n = 1;
function fun(){
    try{
        n++;
        n += m;  //出错
        return n;   
    }catch(err){
        n++;
        return n;
    }finally{
        n++;
    }
}
console.log(fun());    // 3 return为catch的
console.log(n);        // 4

위 내용이 이 문서의 전체 내용이 되기를 바랍니다. 모두의 학습에 도움이 됩니다. 더 많은 관련 콘텐츠를 보려면 PHP 중국어 웹사이트를 팔로우하세요!

관련 권장 사항:

JavaScript 문서 개체 소개


EChart를 사용하여 미니 프로그램에서 데이터를 비동기적으로 로드

위 내용은 JavaScript 오류 개체 구문 분석의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:JS 클로저 소개다음 기사:JS 클로저 소개