t-comm
Version:
专业、稳定、纯粹的工具库
31 lines (30 loc) • 975 B
TypeScript
/**
* 判断是否合法的身份证号
* 除了基本的格式校验外,还检查了第18位是否合法,方法如下:
* - 逆序排列,放到数组 list 中
* - x/X 代表数字10
* - 遍历 list,累加 `item * ((2 ** index) % 11)`,item 为list的每一位,index为下标值
* - 将上一步的累加和余11,判断是否等于1
*
* @param {string} idCard 输入字符串
* @example
* isIdCard('123')
* // false
*
* isIdCard('34052419800101001X')
* // true
*/
export declare function isIdCard(idCard: string | number): boolean;
/**
* 验证身份证号第18位校验码是否合法
* 使用加权求和算法验证身份证号的最后一位校验码
* @param str - 身份证号字符串
* @returns 校验码是否合法
* @private
* @example
* ```ts
* validateMoreIdCard('34052419800101001X'); // true
* validateMoreIdCard('34052419800101001Y'); // false
* ```
*/
export declare function validateMoreIdCard(str: string): boolean;