如何编写可重用的错误?
How to write reusable errors?
我有一个评估对象的函数,如果它是真的,它将把对象推入一个空数组,如果它是假的,它需要抛出一个错误。我如何构建错误以便它可以重用,并且可以被其他消息覆盖。是否可以不使用 Try 块?
const object1={
title: "The Bridge",
grade: 4.0,
score: "Drama/Horrorr"
}
const object2={
title:"Better Call Saul",
score:7.0,
}
let shows=[];
function Add(param){
if(param.hasOwnProperty("title") &&
param.hasOwnProperty("score") &&
param.hasOwnProperty("genre")) {
shows.push(param);
}
else{
throw "Object is missing a property !";
}
add(object1);
add(object2);
try{
}
catch(param){
}
Add(object1);
Add(object2);
使用 try/catch 是 javascript 中最标准的方法。我会坚持这一点,而不是试图对抗潮流。
抛出一个Error对象也是标准的抛出对象
throw new Error('message')
或者构造错误并向其添加属性
const err = new Error('message')
err.code = 1234
throw err
您可以从 Error
class 派生一个 class 并向其添加您自己的属性,如果您想要更可重用的内容。
我有一个评估对象的函数,如果它是真的,它将把对象推入一个空数组,如果它是假的,它需要抛出一个错误。我如何构建错误以便它可以重用,并且可以被其他消息覆盖。是否可以不使用 Try 块?
const object1={
title: "The Bridge",
grade: 4.0,
score: "Drama/Horrorr"
}
const object2={
title:"Better Call Saul",
score:7.0,
}
let shows=[];
function Add(param){
if(param.hasOwnProperty("title") &&
param.hasOwnProperty("score") &&
param.hasOwnProperty("genre")) {
shows.push(param);
}
else{
throw "Object is missing a property !";
}
add(object1);
add(object2);
try{
}
catch(param){
}
Add(object1);
Add(object2);
使用 try/catch 是 javascript 中最标准的方法。我会坚持这一点,而不是试图对抗潮流。 抛出一个Error对象也是标准的抛出对象
throw new Error('message')
或者构造错误并向其添加属性
const err = new Error('message')
err.code = 1234
throw err
您可以从 Error
class 派生一个 class 并向其添加您自己的属性,如果您想要更可重用的内容。