Javascript 如何解决“;无法调用方法…;未定义的”;错误?

Javascript 如何解决“;无法调用方法…;未定义的”;错误?,javascript,google-maps-api-3,Javascript,Google Maps Api 3,在Chrome中给出错误消息:“UncaughtTypeError:无法调用未定义的方法'setDirections'。谁能建议修一下这个吗?thanx您丢失了(全局变量) 因此,方向显示未定义。使用==而不是==进行比较,以防万一+良好的编程习惯。消息非常清楚-方向显示未在任何地方定义。var directionsDisplay;正如詹姆斯·希尔所说,我把它定义为全局变量。在调用之前,可能需要检查是否(窗口['directionsDisplay'])。。。或者只在第一个位置定义它。@kamal

在Chrome中给出错误消息:“UncaughtTypeError:无法调用未定义的方法'setDirections'。谁能建议修一下这个吗?thanx

您丢失了(全局变量)


因此,
方向显示
未定义。

使用
==
而不是
==
进行比较,以防万一+良好的编程习惯。消息非常清楚-
方向显示
未在任何地方定义。var directionsDisplay;正如詹姆斯·希尔所说,我把它定义为全局变量。在调用之前,可能需要检查
是否(窗口['directionsDisplay'])
。。。或者只在第一个位置定义它。@kamal,即使您将
directionDisplay
定义为全局,只说
var directionDisplay
并不会给该对象一个名为
setDirections()的方法
    function calcRoute() {
        var start = document.getElementById("start_").value;
        var end = document.getElementById("end_").value;
        var request = {
            origin: start,
            destination: end,
            travelMode: google.maps.TravelMode.DRIVING
        };
        directionsService.route(request, function (response, status) {
            if (status == google.maps.DirectionsStatus.OK) {
                directionsDisplay.setDirections(response);
            }
        });
    }
//var directionsService = new google.maps.DirectionsService();
var directionsDisplay = new google.maps.DirectionsRenderer({ 'map': map });