function HIBC_CheckCode(code) {     var nonCheckCode = code.substr(0, code.length - 1);     var arr = nonCheckCode.split("");     var sum = 0;     var arrayDic = new Array();     arrayDic["0"] = "0";     arrayDic["1"] = "1";     arrayDic["2"] = "2";     arrayDic["3"] = "3";     arrayDic["4"] = "4";     arrayDic["5"] = "5";     arrayDic["6"] = "6";     arrayDic["7"] = "7";     arrayDic["8"] = "8";     arrayDic["9"] = "9";     arrayDic["A"] = "10";     arrayDic["B"] = "11";     arrayDic["C"] = "12";     arrayDic["D"] = "13";     arrayDic["E"] = "14";     arrayDic["F"] = "15";     arrayDic["G"] = "16";     arrayDic["H"] = "17";     arrayDic["I"] = "18";     arrayDic["J"] = "19";     arrayDic["K"] = "20";     arrayDic["L"] = "21";     arrayDic["M"] = "22";     arrayDic["N"] = "23";     arrayDic["O"] = "24";     arrayDic["P"] = "25";     arrayDic["Q"] = "26";     arrayDic["R"] = "27";     arrayDic["S"] = "28";     arrayDic["T"] = "29";     arrayDic["U"] = "30";     arrayDic["V"] = "31";     arrayDic["W"] = "32";     arrayDic["X"] = "33";     arrayDic["Y"] = "34";     arrayDic["Z"] = "35";     arrayDic["-"] = "36";     arrayDic["."] = "37";     arrayDic[" "] = "38";     arrayDic["$"] = "39";     arrayDic["/"] = "40";     arrayDic["+"] = "41";     arrayDic["%"] = "42";     arr.map(function (item, i) {         sum += Number(arrayDic[item]);     })     var ys = sum % 43;     if (Number(ys) == Number(arrayDic[code.substr(code.length - 1, 1)]))         return true;     else         return false;

}

function OtherCode_CheckCode(code) {     var arr = code.split("");     var odd = 0, even = 0, num;     arr.map(function (item, i) {         if (i & 1) {

even += Number(item);         } else {

odd += Number(item);         }     })     var codeLen = code.length;     if (codeLen % 2 == 0) {         num = String(10 - Number(String(odd * 3 + even).slice(-1)[0])).slice(-1)[0];     }     else {         num = String(10 - Number(String(odd + even * 3).slice(-1)[0])).slice(-1)[0];     }     return num; }

//从批次码中挑选信息 function GetInfoFromRange(Code, Range) {

if (Range != "") {         var Ranges = Range.split(",");         return Code.substring(parseInt(Ranges[0]) - 1, parseInt(Ranges[1]) + parseInt(Ranges[0]) - 1);     } }

//时间类型字段-截取 function GetDateInfoFromRange(Code, Range) {

if (Range != "") {         var Ranges = Range.split(',');         var dateType = Range.split('|')[1];         return GetDateInformation(Code.substring(parseInt(Ranges[0]) - 1, parseInt(Ranges[1].split('|')[0]) + parseInt(Ranges[0]) - 1), dateType);     } else {         return "";     } } //时间类型字段-截取 function GetDateInfoFromRange(Code, Range) {

if (Range != ""&&Code!="") {         var Ranges = Range.split(',');         var dateType = Range.split('|')[1];         return GetDateInformation(Code.substring(parseInt(Ranges[0]) - 1, parseInt(Ranges[1].split('|')[0]) + parseInt(Ranges[0])), dateType);     } else {         return "";     } }

//根据日期格式格式化日期为要显示日期 //dateString--要格式的日期字条串 如:YYMMDD=>>150928  YYJJJ=>>15182   MMYY==> >1115 //dateType"--格式:如YYMMDD function GetDateInformation(dateString, dateType) {     var myDate = new Date();     var ye = myDate.getFullYear().toString().substring(0, 2);     var result = 0;

switch (dateType) {         case "YYMMDD":             result = ye + dateString.substring(0, 2) + "-" + dateString.substring(2, 4) + "-" + dateString.substring(4, 6);             break;         case "YYJJJ":             var flag = 0;             var year = parseInt(ye + dateString.substring(0, 2));             var Month = 0;             var Days = 0;             var monthIndex = 0;             var day = parseInt(dateString.substring(2, 5));             if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 100)) flag = 1;             else flag = 0;             var days = [0, 31, 59 + flag, 90 + flag, 120 + flag, 151 + flag, 181 + flag, 212 + flag, 243 + flag, 273 + flag, 304 + flag, 334 + flag, 365 + flag];             for (var i = 0; i < days.length; i++) {                 if (day <= days[i]) {                     Month = i < 10 ? ("0" + i) : i;                     monthIndex = i - 1;                     break;                 }             }             Days = (day - days[monthIndex] < 10) ? "0" + (day - days[monthIndex]) : (day - days[monthIndex]);             result = year + "-" + Month + "-" + Days;             break;         case "MMYY":             year = parseInt(ye + dateString.substring(2, 4));             result = ye + dateString.substring(2, 4) + "-" + dateString.substring(0, 2) + "-01";             break;         case "YYMM":             result = ye + dateString.substring(0, 2) + "-" + dateString.substring(2, 4) + "-01";             break;         default:             break;     }     var nullResult = "";     var matchResult = result.match(/((^((1[8-9]\d{2})|([2-9]\d{3}))(-)(10|12|0?[13578])(-)(3[01]|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(11|0?[469])(-)(30|[12][0-9]|0?[1-9])$)|(^((1[8-9]\d{2})|([2-9]\d{3}))(-)(0?2)(-)(2[0-8]|1[0-9]|0?[1-9])$)|(^([2468][048]00)(-)(0?2)(-)(29)$)|(^([3579][26]00)(-)(0?2)(-)(29)$)|(^([1][89][0][48])(-)(0?2)(-)(29)$)|(^([2-9][0-9][0][48])(-)(0?2)(-)(29)$)|(^([1][89][2468][048])(-)(0?2)(-)(29)$)|(^([2-9][0-9][2468][048])(-)(0?2)(-)(29)$)|(^([1][89][13579][26])(-)(0?2)(-)(29)$)|(^([2-9][0-9][13579][26])(-)(0?2)(-)(29)$))/);     if (matchResult==null)         return nullResult;     else         return result;

}

条码解析的一片js的更多相关文章

  1. Ajax实现xml文件数据插入数据库(一)--- 构建解析xml文件的js库

    Ajax实现将xml文件数据插入数据库的过程所涉及到的内容比较多,所以对于该过程的讲解本人打算根据交互的过程将其分为三个部分,第一部分为构建解析xml文件的javascript库,第二部分为ajax与 ...

  2. js字符串转日期,js字符串解析成日期,js日期解析, Date.parse小时是8点,Date.parse时间多了8小时

    js字符串转日期,js字符串解析成日期,js日期解析, Date.parse小时是8点,Date.parse时间多了8小时 >>>>>>>>>&g ...

  3. 不阻塞浏览器的解析,待外部js下载完成后异步执行

    网站统计中的数据收集原理及实现(js埋点实现) - lastwhisper - CSDN博客 https://blog.csdn.net/l1212xiao/article/details/80450 ...

  4. C#调用摄像头(AForge)实现扫描条码解析(Zxing)功能

    网上找了很多代码,都比较零散,以下代码纯自己手写,经过测试.下面有链接,下载后可以直接使用. 介绍: 自动识别:点击Start按钮会调用PC摄像头,代码内置Timer,会每100毫秒识别一下当前摄像头 ...

  5. Vue+Java+Base64实现条码解析

    前端部分(Vue + Vant) 引入Vant.使用Vant中的Uploader组件上传文件(支持手机拍照) import Vue from 'vue'; import { Uploader } fr ...

  6. CSV.js – 用于 CSV 解析和编码的 JS 工具库

    逗号分隔值(CSV )文件用于以以纯文本的形式存储表格化数据(数字和文本). CSV 文件包含任意数量的记录,通过某种换行符分隔,每条记录由字段,其他一些字符或字符串分隔,最常用的是文字逗号或制表符. ...

  7. Java - 字符串和Unicode互转 - 解析小米pm.min.js

    小米JS地址: http://p.www.xiaomi.com/zt/20130313/huodong/pm.min.js 上面这个JS是小米抢手机页面的代码.和抢手机有直接关联.. 虽然我3次都没抢 ...

  8. 利用fastjson解析json并通过js&ajax实现页面的无跳转刷新

    1.json是一种优秀的数据格式,在移动开发和web开发中经常用到,本例中通过一个小案例讲解如何通过alibaba的开源框架fastjson来解析jason数据格式并通过js实现无跳转刷新 2,新建一 ...

  9. 全面解析JavaScript的Backbone.js框架中的Router路由

    这篇文章主要介绍了Backbone.js框架中的Router路由功能,Router在Backbone中相当于一个MVC框架中的Controller控制器功能,需要的朋友可以参考下. Backbone ...

随机推荐

  1. VB脚本调用exe应用程序并传递参数

    VB脚本调用应用程序,并传递参数给exe应用程序: Private Sub CommandButton1_Click() Dim a a = Shell("D:\\ExperimentLin ...

  2. eclipse eayExplorer 查看代码的资源管理器打开方式

    http://blog.csdn.net/w709854369/article/details/6599167 http://blog.samsonis.me/wp-content/uploads/2 ...

  3. sublime代码片段功能

    tools - > developer - > new snippet有了这个,你就可以通过iu这两个键,直接弄出自己的模板了,这就很方便了,不用在复制粘贴了.上是代码模板,下面是快捷键, ...

  4. 使用C#的is和as操作符来转型

    开发人员经常需要将一个对象从一种类型转换为其他各种类型.C#不要求任何特殊语法即可将一个对象转换为它的任何基类型,因为向基类型的转换被认为是一种安全的隐式转换.然而,将对象转换为它的某个派生类型时,C ...

  5. listview当选中某一个item时设置背景色其他的不变

    listview当选中某一个item时设置背景色其他的不变: 可以使用listview.setOnFoucsChangeListener(listener) ; /** * listview获得焦点和 ...

  6. log4j+logback+slf4j+commons-logging的关系与调试

    背景     由于现在开源框架日益丰富,好多开源框架使用的日志组件不尽相同.存在着在一个项目中,不同的版本,不同的框架共存.导致日志输出异常混乱.虽然也不至于对系统造成致命伤害,但是明显可以看出,架构 ...

  7. pragma mark - 合成图

    #pragma mark - 合成图 - (UIImage *)getShareImageShell:(UIImage *)shareImage { if (shareImage) { CGSize ...

  8. OperationResult

    public class OperationResult<T> { private readonly ConcurrentDictionary<string, T> _valu ...

  9. 配置nginx下别名alias支持PHP fastcgi解析

    1)参看如下连篇文章:Nginx设置alias实现虚拟目录 alias与root的用法区别http://down.chinaz.com/server/201111/1382_1.htmNginx下al ...

  10. [HDU 5135] Little Zu Chongzhi's Triangles (dfs暴搜)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5135 题目大意:给你n条边,选出若干条边,组成若干个三角形,使得面积和最大.输出最大的面积和. 先将边 ...