对象没有方法'indexOf'

时间:2012-04-12 23:34:27

标签: javascript indexof

当我点击地图上我用Elevation Service @ Google Maps API创建的地方时,我有以下功能(取自Google Maps JavaScript API v3)输出例如63.00425720214844

function getElevation(event) {
    var locations = [];
    var clickedLocation = event.latLng;
    locations.push(clickedLocation);

    var positionalRequest = {
        'locations': locations
    }

    elevator.getElevationForLocations(positionalRequest, function(results, status) {
        if(status == google.maps.ElevationStatus.OK) {
            var s = results[0].elevation
            if(results[0]) {
                alert(s.substring(0, s.indexOf('.') - 1));
            } else {
                alert('Inget resultat hittades');
            }
        } else {
            alert('Det gick inte att hitta höjdskillnaden på grund av följande: ' + status);
        }
    });
}

我想删除点后面的所有内容,包括点,例如从.00425720214844删除63.00425720214844但是当我点击地图上的某处时,我在控制台中收到此错误消息:{ {1}}。

我做错了什么?

提前致谢。

2 个答案:

答案 0 :(得分:7)

变量s不包含字符串。

您可以使用以下方法将其变为字符串:

s = s.toString();

如果是数字,您只需使用数字函数:

alert(Math.floor(s));

答案 1 :(得分:5)

只需执行javascript parseInt(63.00425720214844)即可获得63。