lundi 30 juillet 2018

javascript forEach manage exceptions

I have a forEach loop that check if there are conditions before pushing data in the array:

allow(id, perm, arr) {
  const data = { "userId": id, "permissionId": perm };

  arr.forEach(key => {
    if (id !== key.userId) {
      throw new Error('id does not exists');
    } else {
      if (perm === key.permissionId) {
        throw new Error('perm exists in this id');
      } else {
        arr.push(data);
      }
    }
  });
}

The original array arr is like this:

[{"userId": 1,"permissionId": 1},
 {"userId": 2,"permissionId": 1},
 {"userId": 3,"permissionId": 0},
 {"userId": 4,"permissionId": 0}]

if I use console.log() all works, but when I throw an error the execution stops, but how can I manage the exceptions without stop looping?

Aucun commentaire:

Enregistrer un commentaire