JavaScript 如何编写一个不会引发错误的try/check函数

JavaScript 如何编写一个不会引发错误的try/check函数

在本文中,我们将尝试了解如何使一个函数执行try/check(或基本的try-catch操作)而不引发错误,借助于某些理论解释以及JavaScript中的编码示例。

让我们首先看一下下面显示的包含多个语法的部分,我们将使用这些语法来轻松解决上述问题。

语法:

try {
    // do something...
} catch(error) {
    // do something with error...
}    

下面的语法可以帮助我们创建一个函数或方法(这是箭头函数技术,非常推荐的,我们也可以选择普通的函数声明):

let function_name = () => {
    // do something inside the function scope...
}

首先,让我们快速看一下下面展示的示例,这将有助于我们高效地理解所有语法。

示例1: 在这个示例中,我们将使用上述语法创建两个方法,它们分别会抛出不同的错误。然后,我们将使用多个try-catch块来分别捕获和处理这些错误。

Javascript

<script> 
    let firstRejectedMethod = (rejectionMessage) => { 
        throw new Error(rejectionMessage); 
    }; 
  
    let secondRejectedMethod = (rejectionMessage) => { 
        throw new Error(rejectionMessage); 
    }; 
  
    try { 
        firstRejectedMethod("Error 404!!..."); 
    } catch (error) { 
        console.log("First Rejected Message: "
            + error.message); 
    } 
  
    try { 
        secondRejectedMethod("Something went wrong!!..."); 
    } catch (error) { 
        console.log("Second Rejected Message: "
            + error.message); 
    } 
</script> 

输出:

First Rejected Message: Error 404!!...
Second Rejected Message: Something went wrong!!...

现在是时候审视我们的问题陈述了,也就是说,如何在不引起错误的情况下通过一个示例来执行try/check(或try-catch操作)的函数。

示例2: 在这个示例中,我们将再次使用前面示例中创建的两个方法,它们将分别抛出不同的错误,然后我们将再创建一个函数,通过这个函数我们将只使用一个try-catch块来处理错误,而不是多个块。

Javascript

<script> 
    let firstRejectedMethod = (rejectionMessage) => { 
        throw new Error(rejectionMessage); 
    }; 
  
    let secondRejectedMethod = (rejectionMessage) => { 
        throw new Error(rejectionMessage); 
    }; 
  
    let InterceptRejectedMessagesMethod = (callback, content) => { 
        try { 
            callback(content); 
        } catch (error) { 
            return error.message; 
        } 
    }; 
  
    let first_rejected_message = InterceptRejectedMessagesMethod( 
        firstRejectedMethod, 
        "Error 404!!..."
    ); 
  
    let second_rejected_message = InterceptRejectedMessagesMethod( 
        secondRejectedMethod, 
        "Something went wrong!!..."
    ); 
  
    console.log("First Rejected Message: "
        + first_rejected_message); 
    console.log("Second Rejected Message: "
        + second_rejected_message); 
</script> 

输出结果:

First Rejected Message: Error 404!!...
Second Rejected Message: Something went wrong!!...

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程