README
cin-checksum
Citizen identification number(GB 11643-1999) Checksum
Install
yarn add cin-checksum
Files
dist/
├─ index.js ( UMD )
├─ index.min.js ( UMD, compressed )
├─ index.mjs ( ES Module )
├─ index.min.mjs ( ES Module, compressed )
├─ index.cjs ( CommonJS )
└─ index.min.cjs ( CommonJS, compressed )
Usage
browser
<!-- ES Module -->
<script type="module">
import {generate, validate} from 'https://unpkg.com/cin-checksum?module'
</script>
<!-- UMD -->
<script src="https://unpkg.com/cin-checksum" nomodule></script>
UMD
build exports a global object CIN.checksum
contains two methods CIN.checksum.generate
and CIN.checksum.validate
node
// ES Module
import {generate, validate} from 'cin-checksum'
API
generate(parts)
generate checksum by parts
generate('11010519491231002')
// -> 'X'
generate('44052418800101001')
// -> '4'
parts
first 17 digits to generate checksum
validate(parts, checkBit?)
validate('11010519491231002X')
// -> true
parts
- first 17/18 digits to validate
- type:
string
validate('11010519491231002X')
// -> true
validate('11010519491231002', 'x')
// -> true
checkBit
- checkBit to validate
- type:
string
- default: parts[17]
validate('11010519491231002X')
// -> true
validate('11010519491231002X', '0')
// -> false