Professor, vendo sua resposta no codigo agora fiquei um pouco preocupado, não sei se entendi o conceito do que esta sendo discutido ou se não entendi o pedido no exercicio. Veja meu codigo como ficou:
class Codigo{
  constructor(codigo){
    this._codigo = codigo;
  }
  validaCodigo(){
    if(/\D{3}-\D{2}-\d{2}/.test(this._codigo)) {
          alert('Código válido!');
      } else {
          alert('Código inválido');
    }
  }
}e na chamada:
let codigo = new Codigo("1WZ-JJ-12");
      codigo.validaCodigo();criei uma classe e funcionou, porém, fiquei na duvida se o conceito seguido esta seguindo o OO ou continuo com a programação procedural. Desculpe se a duvida parece obvia, mas acho q ainda estou perdido na programacao procedural x OO.
Obrigado pela ajuda,
 
            