试图使用parseFloat来摆脱结束字符

时间:2016-05-18 18:28:56

标签: javascript jquery html

脚本返回州名和里程,即TN 71.6英里。我试图通过将字符串转换为应该忽略不需要的字符的数字来摆脱mi。完全忽略parseFloat命令。

function compileMilesReciever(data) {
            if (data === null) {
                setTimeout(compileMiles, 6000);
            } else {
                if (compileMilesIndex == orderedLatLngs.length) {

                    if (!stepEndState) {
                        stepEndState = startState;
                    }

                    stateMiles[stepEndState] = data.routes[0].legs[0].distance["text"];

                    var txt = "";
                    var i = 0;                   
                    var x = stateMiles[state];
                    parseFloat(x);

                    for (state in stateMiles) {
                        i++;

                        $("#results").append
                        $(".state" + i).append(state);
                        $(".mile" + i).append(stateMiles[state]);

                                            }

3 个答案:

答案 0 :(得分:1)

parseFloat返回一个你没有捕获的值。

var ret = parseFloat(x);

当你遇到这样的问题时。尝试在浏览器的Javascript控制台中运行功能。你通常可以自己找出问题所在。

答案 1 :(得分:0)

首先,您没有使用parseFloat返回的值。要使用它,您需要:

x = parseFloat(x)

但这会失败,因为“mi”不是数值。

相反,要忽略“mi”,您可以执行类似

的操作

x = parseFloat(x.substring(0, x.length - 3));

答案 2 :(得分:0)

如果你想摆脱mi并保持状态,那么你更容易使用切片方法:

console.log('TI 1563.12 mi'.slice(0, -3));