Javascript 用逗号(,)分隔,并检查是否有任何值为=";“什么?”;

Javascript 用逗号(,)分隔,并检查是否有任何值为=";“什么?”;,javascript,string-parsing,Javascript,String Parsing,如何以逗号(,)分隔JavaScript变量。 然后检查任何分隔字符串的值=“something” 例如,我的变量的值为1,2,3,4,5,6,7,8,9,102212312,我想检查if语句中是否有任何数字=7 有人知道怎么做吗?首先,将字符串拆分为,“”。然后,在拆分字符串数组上使用indexOf,查看是否找到了目标字符串(-1表示在数组中找不到目标字符串)。例如: var str = "1,2,3,4,5,6,7,8,9,10,10,2212312"; var split_str = st

如何以逗号(,)分隔JavaScript变量。
然后检查任何分隔字符串的
值=“something”

例如,我的变量的值为
1,2,3,4,5,6,7,8,9,102212312
,我想检查if语句中是否有任何数字
=7


有人知道怎么做吗?

首先,将字符串拆分为
,“
”。然后,在拆分字符串数组上使用
indexOf
,查看是否找到了目标字符串(
-1
表示在数组中找不到目标字符串)。例如:

var str = "1,2,3,4,5,6,7,8,9,10,10,2212312";
var split_str = str.split(",");
if (split_str.indexOf("7") !== -1) {
    // Original string contains 7
}

参考文献:

  • String.prototype.split
    -
  • Array.prototype.indexOf
    -

将其拆分为一个数组,然后使用indexOf查看它是否在那里。如果返回-1,则不是

"1,2,3,4,5,6,7,8,9,10,2212312".split(",").indexOf("7")
使用及

它也可以通过正则表达式来实现

var str = "1,2,3,4,5,6,7,8,9,10,2212312";
var num = 7;    
var re = new RegExp("(^|,)" + num + "($|,)");
alert(re.test(str));

与以下产品一起使用:

您正在寻找“包含”功能。您可以使用jQuery进行此操作

if ($.inArray(7, value-of-any-of-the-seperated-strings))
{
   console.log("there is a 7!")
}

这是一个简单的应用程序:

另一个可以写的是:

if (~yourVar.split(',').indexOf('7')) {
    //do stuff
}
或者如果已定义了
Array.prototype.contains

if (yourVar.split(',').contains('7')) {
    //do stuff
}
或者,如果要使用正则表达式:

if (/(?:^|,)7(?:,|$)/.test(yourVar)) {
    //do stuff
}

注意:,并且所有这些都需要polyfills才能在浏览器中正常工作。

您可以使用
数组。过滤器
,类似于:

var values = '1,2,3,4,5,6,7,8,9,10,2212312'.split(','), find = 7;
if ( values.filter(function(a){return +a === find;}).length ) { /* ... */ }

伙计,我希望这能帮你

    var yourValues = '1,2,3,4,5,6,7,8,9,10,2212312';
    var array = yourValues.split(",");
    boolean isValue = false;
    for(i in array)
    {
       if(array[i]=='7')
       {
             isValue=true;
       }
    }


    if(isValue)
        alert("your number is in the string");
    else
        alert("your number is in the string");

虽然应该提到的是,如果OP没有使用jQuery,那么就没有必要为它包含如此繁重的库。如果数组中有207或17个,那么它将失败?@epascarello然后搜索
,7'
。如果它是第一个或最后一个项目,该怎么办。“它会再次失败。”埃帕斯卡雷罗删除了答案的这一部分。谢谢你的意见。
if (/(?:^|,)7(?:,|$)/.test(yourVar)) {
    //do stuff
}
var values = '1,2,3,4,5,6,7,8,9,10,2212312'.split(','), find = 7;
if ( values.filter(function(a){return +a === find;}).length ) { /* ... */ }
    var yourValues = '1,2,3,4,5,6,7,8,9,10,2212312';
    var array = yourValues.split(",");
    boolean isValue = false;
    for(i in array)
    {
       if(array[i]=='7')
       {
             isValue=true;
       }
    }


    if(isValue)
        alert("your number is in the string");
    else
        alert("your number is in the string");