parseInt最后一个数字并保存为变量

时间:2016-02-22 16:26:13

标签: javascript jquery parseint

我想将两个不同的值保存为图像计数器类中的两个变量,如:

<div class="counter">33 / 111</div> 

33是当前图像的编号。

总共是111张图片。

我可以使用parseInt获取第一个值并将其保存在变量中。

$(document).ready(function(){


    var sc=$('.counter').text();

    sc=parseInt(sc);
    alert(sc);


});

但是如何获取最后一个数字(图像总数=“111”)并将其放入另一个第二个变量?

var x=$('.counter').text();

    x=???parseInt(x)+???;//get the last Number (111)
    alert(x); //x=111

3 个答案:

答案 0 :(得分:2)

首先,不要使用parseInt()来获取第一个值。使用split()将值获取到数组中,然后您可以从数组中获取它们,如下所示:

var values = $('.counter').text().split('/');

然后将它们分成单独的变量,您可以简单地引用数组的相关索引:

var firstValue = values[0];
var secondValue = values[1];

注意

上面的解决方案将返回div中的字符串值,因此如果您确实需要它们作为整数,则可以使用parseInt()单独转换它们,如下所示:

var firstValue = parseInt(values[0]);
var secondValue = parseInt(values[1]);

或者您可以在分配firstValuesecondValue变量之前将整个数组转换为整数,而不必在声明中使用parseInt(),如下所示:

var values = $('.counter').text().split('/').map(Number);

另一个注意

如果您正在使用JavaScript的新ES6规范(其中有很多好东西),您实际上可以将其作为一个非常光滑的单行程序,如下所示:

let [firstValue, secondValue] = $('.counter').text().split('/').map(Number);

答案 1 :(得分:1)

如果文字总是&#34;数字/数字&#34;,您可以像这样提取最后一个数字:

lastNumber = +(x.split('/')[1].trim());

split创建一个数组,[1]返回该数组中的第二个成员,trim删除字符串周围的空白区域。最后,表达式前面的+会将值转换为数字。

答案 2 :(得分:0)

RegExes是一种选择,但更基本的方式是这样的:

var totalNum = parseInt(x.substr(x.indexOf('/') + 1));
var pageNum = parseInt(x);