如何在JavaScript中将字符串转换为整数?


当前回答

您可以使用加号。例如:

var personAge = '24';
var personAge1 = (+personAge)

然后您可以看到新变量的typebytypeofpersonAge1;这是数字。

其他回答

函数doSth(){var a=document.getElementById('input').value;document.getElementById('number').innerHTML=toNumber(a)+1;}函数toNumber(str){return+str;}<input id=“input”type=“text”><input onclick=“doSth()”type=“submit”><span id=“number”></span>

在JavaScript中,您可以执行以下操作:

解析Int

parseInt("10.5") // Returns 10

与1相乘

var s = "10";
s = s*1;  // Returns 10

使用一元运算符(+)

var s = "10";
s = +s;  // Returns 10

使用按位运算符

(注:在2140000000之后开始破裂。示例:~~“2150000000”=-214967296)

var s = "10.5";
s = ~~s; // Returns 10

使用Math.floor()或Math.ceil()

var s = "10";
s = Math.floor(s) || Math.ceil(s); // Returns 10

尝试parseInt。

var number = parseInt("10", 10); //number will have value of 10.
function parseIntSmarter(str) {
    // ParseInt is bad because it returns 22 for "22thisendsintext"
    // Number() is returns NaN if it ends in non-numbers, but it returns 0 for empty or whitespace strings.
    return isNaN(Number(str)) ? NaN : parseInt(str, 10);
}

我用这个

String.prototype.toInt = function (returnval) {
    var i = parseInt(this);
     return isNaN(i) ? returnval !== undefined ? returnval : - 1  :      i;
}

var str = "7";
var num = str.toInt(); // outputs 7, if not str outputs -1
//or
var num = str.toInt(0); // outputs 7, if not str outputs 0

这样我总能得到一个整数。