本文主要是介绍javascript中判断逗号分隔的数字中是否包含指定数字,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
现在我有一个变量,里面维护了数值和类别的对应关系
var numberType ={"1":"AType","2,3,4":"BType","5,6,7,8":"CType","9,10,11,12,13":"DType"};
比如,传入一个值“1”,函数返回对应类别“AType”;传入一个值“2”,函数返回对应类别“BType”
具体实现代码如下:
// 根据数字查找对应类别
function findTypeByNum(num) {var numberType ={"1":"AType","2,3,4":"BType","5,6,7,8":"CType","9,10,11,12,13":"DType"};var pattern = new RegExp("\\b" + num + "\\b");for (var obj in numberType) {if (obj.match(pattern)) {return numberType[obj];}}
}
当时为了尽快解决问题,没有采用上面的正则匹配(主要是卡在给反斜线转义这部分)写法。用了另外一种,能够实现功能,但稍显麻烦:
function findTypeNum(num) {var a = [1];var b =[2,3,4];var c = [5,6,7,8];var d = [9,10,11,12,13];var allVars = [a, b, c, d];var varNames = ["AType", "BType", "CType", "DType"];for (var i = 0; i < allVars.length; i++) {if ($.inArray(parseInt(num), allVars[i])!=-1) {return varNames[i];}}
}
这篇关于javascript中判断逗号分隔的数字中是否包含指定数字的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!