0

我需要有关 javascript 函数的帮助。

我有这样的字符串:124text12hello

我需要一个实现以下功能的功能:

foo('124text') -> 123

foo('12hello') -> 12

换句话说:我给它一个输入字符串,函数返回一个整数,它是这个字符串前面的数字

如何用 javascript 做到这一点?

4

2 回答 2

4

parseInt会这样做

parseInt('123abc',10) //returns 123 as a number

现场示例:http: //jsfiddle.net/eAe4v/

于 2012-12-05T11:45:00.240 回答
1

这是正则表达式的一个简单应用:

var str, num;
str = "124text";
num = str.replace(/\D/g, '');

或者,如果字符串后面可能有您不想要的其他数字:

var str, num, m;
str = "124text";
m = /^(\d+)/.exec(str);
if (m) {
    num = m[1];
}

在这两种情况下,num上面仍然是一个字符串(只是一个只有数字的字符串)。如果num = parseInt(num, 10)要将其解析为 base-10(十进制)字符串,请使用。

于 2012-12-05T11:43:31.837 回答