所以我想做这样的事情:
我有一个变量可以返回任何高达7的数字,我需要单独测试每个数字的值。 我只能认为这是一个字符串,但请随意提供字符串或整数的帮助。
total = "1658793";
parseFloat(total.substring(6)) == 3;
返回“true”
但我需要能够获得下一个值,然后是下一个,然后是下一个。
显然
parseFloat(total.substring(5)) == 9;
返回“false”
as“parseFloat(total.substring(5))= 93”但我需要能够进行正则表达式检查或者其他东西才能找到9。我需要9,而不是93 这有道理吗??
感谢 太
答案 0 :(得分:1)
使用
parseFloat(total.substring(5, 6)) == 9;
parseFloat(total.substring(4, 5)) == 7;
......等等
答案 1 :(得分:0)
您可以使用字符串split()方法
var arr = total.split('');
然后
var cnt = arr.length;
for(var i = 0; i < cnt; i++)
{
if(parseInt(arr[i]) == 5)
{
// do something here
}
}
或者你可以将%10除以10(整数除法)
while(total > 0)
{
var digit = total % 10;
total = Math.floor(total / 10);
if(digit == 5)
{
// do something here
}
}
答案 2 :(得分:0)
只需将整个起始编号解析为整数,并使用模数(%
)运算符检查其数字。
var num = parseInt(total, 10);
var ones = num % 10;
if (ones != 3) { ... }
num = (num - ones) / 10;
var tens = num % 10;
if (tens != 9) { ... }
num = (num - tens) / 10;
var hundreds = num % 10;
......等等。