最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JavaScript身份证真伪校验方法

来源:动视网 责编:小采 时间:2020-11-27 20:14:40
文档

JavaScript身份证真伪校验方法

JavaScript身份证真伪校验方法:[导读] var IdCardValid = { 身份证检查isIdCard : function(_id) {var returnObj = new Object();var id = $ trim(_id toUpperCase());var idArray = this _splitId(id);if (idArray length >
推荐度:
导读JavaScript身份证真伪校验方法:[导读] var IdCardValid = { 身份证检查isIdCard : function(_id) {var returnObj = new Object();var id = $ trim(_id toUpperCase());var idArray = this _splitId(id);if (idArray length >


[导读] var IdCardValid = { 身份证检查isIdCard : function(_id) {var returnObj = new Object();var id = $ trim(_id toUpperCase());var idArray = this _splitId(id);if (idArray length > 0)

var IdCardValid = {//身份证检查
	isIdCard : function(_id) {
	var returnObj = new Object();
	var id = $.trim(_id.toUpperCase());
	var idArray = this._splitId(id);
	
	if (idArray.length > 0) {
	if (id.length != 18) {
	returnObj.status = false;
	returnObj.info = " 身份证号码必须是18位";

	return returnObj;
	}

	var checksum = id.substring(17, 18);
	var sum = 0;

	for ( var i = 1; i <= idArray.length; i++) {
	var Ai = idArray[i - 1];
	var Wi = this._getWeightingFactor(i);

	if (Wi != -1) {
	sum += Ai * Wi;
	}
	}

	var mod = sum % 11;

	if (this._getChecksum(mod) == checksum) {
	returnObj.status = true;

	return returnObj;
	} else {
	returnObj.status = false;
	returnObj.info = " 身份证号码输入错误";

	return returnObj;
	}
	} else {
	returnObj.status = false;
	returnObj.info = " 身份证号码格式错误";

	return returnObj;
	}
	},
	
	_splitId : function(_id) {
	var len = _id.length;
	var array = new Array();

	for ( var i = 0; i < len - 1; i++) {
	array.push(_id.charAt(i));
	}

	return array;
	},
	
	_getWeightingFactor : function(_index) {
	switch (_index) {
	case 1:
	return 7;
	case 2:
	return 9;
	case 3:
	return 10;
	case 4:
	return 5;
	case 5:
	return 8;
	case 6:
	return 4;
	case 7:
	return 2;
	case 8:
	return 1;
	case 9:
	return 6;
	case 10:
	return 3;
	case 11:
	return 7;
	case 12:
	return 9;
	case 13:
	return 10;
	case 14:
	return 5;
	case 15:
	return 8;
	case 16:
	return 4;
	case 17:
	return 2;
	default:
	return -1;
	}
	},
	_getChecksum : function(_mod) {
	switch (_mod) {
	case 0:
	return 1;
	case 1:
	return 0;
	case 2:
	return "X";
	case 3:
	return 9;
	case 4:
	return 8;
	case 5:
	return 7;
	case 6:
	return 6;
	case 7:
	return 5;
	case 8:
	return 4;
	case 9:
	return 3;
	case 10:
	return 2;
	default:
	return -1;
	}
	}
};

文档

JavaScript身份证真伪校验方法

JavaScript身份证真伪校验方法:[导读] var IdCardValid = { 身份证检查isIdCard : function(_id) {var returnObj = new Object();var id = $ trim(_id toUpperCase());var idArray = this _splitId(id);if (idArray length >
推荐度:
标签: 身份证 步骤 方法
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top