我的 JavaScript 拆分功能不起作用

My JavaScript split function not working

我有以下代码,它通过 Google 地图 API 获取在地图上单击的位置的经纬度

var latitude_longitude = evt.latLng;

当我使用下面的代码提醒变量时,会显示以下内容: (53.4128,-1.51165)

   alert(latitude_longitude);////Gets latitude and Longitude - Latitude first - Longitude second

但是我现在需要将 (53.4128,-1.51165) 拆分为 2 个变量纬度和经度,并尝试使用以下代码:

var myarr = latitude_longitude.split(",");
var latitude = myarr[0];
alert(latitude);

但是警报没有显示,我不确定为什么?

你可以试试:

var latitude = evt.latLng.lat();

鉴于此:

var latlng = '53.4128,-1.51165';
console.log(latlng);
var lat = latlng.split(",")[0];
console.log(lat);

我得到输出:

53.4128,-1.51165
53.4128

因此,逗号拆分对于其中包含逗号的字符串变量是完全有效的。但是,我怀疑您的 latitude_longitude 不是字符串。打开开发人员工具(或您正在使用的浏览器的等效工具),设置断点并检查变量。我怀疑您会看到它是一个具有属性的对象,并且您可以访问这些属性而不是尝试解析它的字符串表示形式。

首先检查你的变量是对象还是字符串:

 alert(typeof latitude_longitude);

如果您的警报输出是 "object",那么您需要将其转换为字符串

var strLatLong=String(latitude_longitude);
var LangLat = strLatLong.split(",");
alert(typeof strLatLong);

..它对我有用