如何以逗号 (,) 以某种方式拆分/分隔我的 JavaScript 变量。
然后检查是否value-of-any-of-the-separated-strings = "something"
例如,我的变量的值为1,2,3,4,5,6,7,8,9,10,2212312
,我想检查是否有任何数字= 7
在 IF 语句中。
有谁知道如何做到这一点?
如何以逗号 (,) 以某种方式拆分/分隔我的 JavaScript 变量。
然后检查是否value-of-any-of-the-separated-strings = "something"
例如,我的变量的值为1,2,3,4,5,6,7,8,9,10,2212312
,我想检查是否有任何数字= 7
在 IF 语句中。
有谁知道如何做到这一点?
首先,将字符串拆分为","
. 然后,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
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/splitArray.prototype.indexOf
- https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf这是一个简单的应用Array.prototype.some
:
var yourVar = '1,2,3,4,5,6,7,8,9,10,2212312';
function isSeven(val) {
return val === '7';
}
if (yourVar.split(',').some(isSeven)) {
//do stuff
}
另一种常见的写法是:
if (~yourVar.split(',').indexOf('7')) {
//do stuff
}
或者如果Array.prototype.contains
已经定义:
if (yourVar.split(',').contains('7')) {
//do stuff
}
或者,如果您想使用正则表达式:
if (/(?:^|,)7(?:,|$)/.test(yourVar)) {
//do stuff
}
注意: Array.prototype.some
,Array.prototype.indexOf
并且Array.prototype.contains
都需要 polyfill 才能跨浏览器正常工作。
将其拆分为一个数组,然后使用 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 pieces = str.split(",");
var index = pieces.indexOf(num.toString());
也可以用正则表达式来完成
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));
var someString = '1,2,3,4,5,6,7,8,9,10,2212312';
var splitArray = someString.split(',');
var sevenPosition = splitArray.indexOf('7');
您可以使用Array.filter
,例如:
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");
您是否正在寻找“包含”功能。您可以为此使用 jQuery。
if ($.inArray(7, value-of-any-of-the-seperated-strings))
{
console.log("there is a 7!")
}