Quick actions

cmd+k|ctrl+k

Navigation

Languages

JS Throwing Error

Snippet info

Language

JavaScript

Visibility

public

Author

nacht777

Created

2022-10-04T05:27:56.994005Z

Updated

2022-10-04T05:27:56.994005Z

let json = '{ "name": "Yoda", "age": 20 }';
 
try {
    let user = JSON.parse(json);
 
    console.log(user.name);
    console.log(user.age);
} catch (error) {
    console.log(error.name);
    console.log(error.message);
}

let son = '{ "age": 20 }';
 
try {
    let user = JSON.parse(son);
 
    console.log(user.name); // undefined
    console.log(user.age);  // 20
} catch (error) {
    console.log(error.name);
    console.log(error.message);
}

//throw
let mson = '{ "age": 20 }';
 
try {
    let user = JSON.parse(mson);
 
    if (!user.name) {
        throw new SyntaxError("'name' is required.");
    }
 
    console.log(user.name); // undefined
    console.log(user.age);  // 20
} catch (error) {
    console.log(`JSON Error: ${error.message}`);
}

let ason = '{ "name": "Yoda", "age": 20 }';
 
try {
    let user = JSON.parse(ason);
 
    if (!user.name) {
        throw new SyntaxError("'name' is required.");
    }
 
    errorCode;
 
    console.log(user.name); // Yoda
    console.log(user.age);  // 20
} catch (error) {
     if (error instanceof SyntaxError) {
        console.log(`JSON Error: ${error.message}`);
    } else if (error instanceof ReferenceError) {
        console.log(error.message);
    } else {
        console.log(error.stack);
    }
}
 
/* output
JSON Error: errorCode is not defined
*/
INFO