如何编写可重用的错误?

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 并向其添加您自己的属性,如果您想要更可重用的内容。