cor*_*orn 9 javascript google-maps google-maps-api-3
任何人都知道为什么会这样:
var wickedLocation = new google.maps.LatLng(44.767778, -93.2775);
Run Code Online (Sandbox Code Playgroud)
但这不会:
var wickedCoords = "44.767778, -93.2775";
var wickedLocation = new google.maps.LatLng(wickedCoords);
Run Code Online (Sandbox Code Playgroud)
我尝试将纬度和经度作为单独的变量传递,但也没有做到这一点.如何将坐标成功传递为变量?谢谢!
jmo*_*253 17
在此示例中,您将两个不同的数值传递给构造函数,然后将新创建的对象分配给wickedLocation:
var wickedLocation = new google.maps.LatLng(44.767778, -93.2775);
Run Code Online (Sandbox Code Playgroud)
在此示例中,您将单个字符串值传递给需要两个不同数字坐标的构造函数:
var wickedCoords = "44.767778, -93.2775";
var wickedLocation = new google.maps.LatLng(wickedCoords);
Run Code Online (Sandbox Code Playgroud)
数据类型完全不同.
话虽如此,如果你想将一个坐标表示为一个对象,你可以这样做:
var myHome = { "lat" : "44.767778" , "long" : "-93.2775" };
var yourHome = { "lat" : "23,454545" , "long" : "-92.12121" };
Run Code Online (Sandbox Code Playgroud)
然后,当您需要从Google创建coords对象时,您可以将数据作为从单个对象派生的单个参数传递:
var wickedLocation = new google.maps.LatLng( myHome.lat, myHome.long );
Run Code Online (Sandbox Code Playgroud)
如果您将坐标作为字符串获取,则以您在示例中显示的格式,您可以执行以下操作:
var b=wickedCoords.split(",");
var wickedLocation=new google.maps.LatLng(parseFloat(b[0]), parseFloat(b[1]));
Run Code Online (Sandbox Code Playgroud)