Lehen urratsak
nif-dni-nie-cif-validation liburutegiak Espainiako identifikatzaile fiskalak (IFZ, NAN, K/L/M IFZ, AIZ eta IFK) egiaztatzen ditu arau ofizialen arabera, eta zenbaki bat zergatik ez den baliozkoa esaten dizu. Ez du mendekotasunik, bere TypeScript motak ditu, eta import zein require erabilita funtzionatzen du Node.js 20 edo berriagoan, egungo nabigatzaile guztietan, Deno-n eta Bun-en.
Instalazioa
«Instalazioa» atalanpm install nif-dni-nie-cif-validationpnpm add nif-dni-nie-cif-validationyarn add nif-dni-nie-cif-validationbun add nif-dni-nie-cif-validationdeno add npm:nif-dni-nie-cif-validationTerminal batetik edo shell script batetik balioztatzeko, koderik idatzi gabe, exekutatu npx nif-dni-nie-cif-validation validate 12345678Z: Komando-lerroa gidak komando eta aukera guztiak ditu.
Egiaztatu zenbaki bat
«Egiaztatu zenbaki bat» atalaisValid… funtzioek bai edo ez erantzuten dute. Edozein balio onartzen dute eta ez dute inoiz salbuespenik jaurtitzen; beraz, erabiltzaileak idatzitakoa pasa diezaiekezu:
import { isValidNif } from "nif-dni-nie-cif-validation";
isValidNif("12345678Z"); // true: NAN batisValidNif("X1234567L"); // true: AIZ batisValidNif("B12345674"); // true: IFK batisValidNif(" 12.345.678-z "); // true: zuriuneak, puntuak, marrak eta minuskulak onartzen diraisValidNif("12345678A"); // false: kontrol-letra ez da zuzenaisValidNif(null); // false: ez du inoiz salbuespenik jaurtitzenCommonJS-ekin, require berdin dabil:
const { isValidNif } = require("nif-dni-nie-cif-validation");
isValidNif("12345678Z"); // trueAukeratu funtzio egokia
«Aukeratu funtzio egokia» atalaisValidNif funtzioak mota guztiak onartzen ditu. Eremu batek mota batzuk bakarrik onartzen baditu, erabili funtzio zehatzagoa:
| Eremuak onartzen du… | Erabili |
|---|---|
| Edozein IFZ: NAN, K/L/M IFZ, AIZ edo IFK | isValidNif(value) |
| Pertsona fisikoak bakarrik: NAN, K/L/M IFZ edo AIZ | isValidNaturalPersonNif(value) |
| NAN bat (edo K/L/M IFZ bat) | isValidDni(value) |
| AIZ bat | isValidNie(value) |
| Enpresak eta beste erakunde batzuk (IFK) | isValidCif(value) |
Espainiako IFZ-BEZ bat (ES + IFZ, formatua bakarrik) |
isValidSpanishVat(value) |
import { isValidCif, isValidNaturalPersonNif } from "nif-dni-nie-cif-validation";
isValidNaturalPersonNif("X1234567L"); // trueisValidNaturalPersonNif("B12345674"); // false: IFK bat ez da pertsona fisiko batisValidCif("P2807900B"); // true: Madrilgo UdalaEz dakizu ziur zer den dokumentu bakoitza? Ikusi NAN, AIZ, IFZ eta IFK.
Jakin zergatik, eta gorde forma kanonikoa
«Jakin zergatik, eta gorde forma kanonikoa» atalavalidate() funtzioak mota, gorde behar den forma kanonikoa eta, balioa baliozkoa ez bada, errore bat itzultzen du: kode bat, betetzen ez den SPEC.md araua, mezu bat eta espero zen kontrol-karakterea:
import { validate } from "nif-dni-nie-cif-validation";
validate(" 12.345.678-z ");// { valid: true, type: "DNI", normalized: "12345678Z" }
validate("12345678A").error;// { code: "INVALID_CONTROL_CHARACTER", rule: "DNI-2", expected: "Z",// message: 'The control character is not correct: for this DNI it should be "Z".' }Gorde normalized, ez erabiltzaileak idatzitakoa: maiuskulaz dago, bereizlerik gabe, eta berdina da dokumentu bera idazteko modu guztietarako.
Erakutsi mezua erabiltzailearen hizkuntzan
«Erakutsi mezua erabiltzailearen hizkuntzan» atalaMezuak ingelesez daude lehenespenez. Gaztelania, katalana, euskara eta galegoa bereiz inportatzen dira; beraz, zure bundleak erabiltzen dituzun hizkuntzak bakarrik ditu:
import { validate } from "nif-dni-nie-cif-validation";import { es } from "nif-dni-nie-cif-validation/locales/es";
validate("12345678A", { locale: es }).error?.message;// "El carácter de control no es correcto: para este DNI debería ser «Z»."