Migrar desde better-dni
better-dni valida DNI e NIE, e xéraos. Esta biblioteca cobre o mesmo e engade o CIF e os NIF K/L/M, a normalización, o motivo de cada erro e mensaxes traducidas. A comparación desta páxina é con better-dni 4.4.2.
Equivalencia de funcións
Sección titulada «Equivalencia de funcións»| better-dni | nif-dni-nie-cif-validation | Notas |
|---|---|---|
isValid(x) |
isValidNaturalPersonNif(x) |
Tamén acepta os NIF K/L/M e a forma antiga do NIE. isValidNif(x) acepta ademais un CIF |
isNIF(x) |
isValidDni(x) |
Tamén acepta os NIF K/L/M. validate(x, { types: ["DNI"] }) para aceptar só un DNI |
isNIE(x) |
isValidNie(x) |
|
ctrlChar(x) |
computeControlCharacter(x) |
Pase o número sen o seu carácter de control |
randomNIF(), randomNIE() |
generateDni(), generateNie() |
De nif-dni-nie-cif-validation/generate; { seed } para valores fixos |
randomNIFWith(letter), randomNIEWith(prefix, letter) |
Sen equivalente | Use generateNie({ prefix }); a letra de control dedúcese dos díxitos |
normalize(x) |
normalize(x) |
Os validadores xa normalizan: non fai falta chamala antes |
Antes e despois
Sección titulada «Antes e despois»Antes, con better-dni:
import { ctrlChar, isNIE, isNIF, isValid, normalize } from "better-dni";
isValid("12345678Z"); // trueisNIF("12345678Z"); // trueisNIE("X1234567L"); // truectrlChar("12345678"); // "Z"isValid(normalize("12345678-z")); // true: primeiro hai que normalizarDespois:
import { computeControlCharacter, isValidDni, isValidNaturalPersonNif, isValidNie,} from "nif-dni-nie-cif-validation";
isValidNaturalPersonNif("12345678Z"); // trueisValidDni("12345678Z"); // trueisValidNie("X1234567L"); // truecomputeControlCharacter("12345678"); // "Z"isValidNaturalPersonNif("12345678-z"); // true: sen paso previo de normalizaciónPara xerar números, antes:
import { randomNIE, randomNIF } from "better-dni";
randomNIF(); // un DNI aleatoriorandomNIE(); // un NIE aleatorioDespois:
import { createGenerator, generateDni, generateNie } from "nif-dni-nie-cif-validation/generate";
generateDni(); // un DNI aleatoriogenerateNie(); // un NIE aleatoriogenerateDni({ seed: 1 }); // "62707394X": o mesmo en cada execucióncreateGenerator(42).nie(); // "Y4482905N": unha secuencia de valores con sementeDiferenzas de comportamento
Sección titulada «Diferenzas de comportamento»NIF K/L/M. better-dni rexéitaos. Son NIF de persoas físicas (españois sen DNI, persoas estranxeiras sen NIE), e esta biblioteca acéptaos en isValidDni e en isValidNaturalPersonNif (KLM-1).
A forma antiga do NIE. better-dni rexeita os NIE de 10 caracteres, como X01234567L; seguen sendo válidos (NIE-3).
Separadores. better-dni acepta minúsculas, pero rexeita espazos, puntos e guións salvo que antes chame ao seu normalize(). Aquí todos os validadores normalizan, e normalize() tamén elimina os puntos e engade os ceros iniciais dun DNI curto.
import { isValid, normalize } from "better-dni";
isValid("K1234567L"); // falseisValid("X01234567L"); // falseisValid(" 12345678Z"); // falsenormalize(" 12.345.678-z "); // "12.345.678Z": mantéñense os puntosimport { isValidNaturalPersonNif, normalize } from "nif-dni-nie-cif-validation";
isValidNaturalPersonNif("K1234567L"); // trueisValidNaturalPersonNif("X01234567L"); // trueisValidNaturalPersonNif(" 12345678Z"); // truenormalize(" 12.345.678-z "); // "12345678Z"CIF. better-dni non ten validador de CIF. Use isValidCif(), ou isValidNif() para aceptar todos os tipos.
O motivo. better-dni responde si ou non. validate() tamén dá o tipo, a forma canónica e, se o valor non é válido, o código de erro, a regra de SPEC e unha mensaxe en cinco idiomas: consulte Códigos de erro e mensaxes traducidas.