用领先的下划线解析JSON

jon*_*ich 1 javascript jquery json

当我输入console.log数据时,在Chrome开发工具中看起来像这样:

e.LatLngBounds {_southWest: e.LatLng, _northEast: e.LatLng}
    _northEast: e.LatLng
        lat: 50.62507306341435
        lng: -69.169921875
      __proto__: Object
    _southWest: e.LatLng
        lat: 27.059125784374068
        lng: -127.96875
       __proto__: Object
    __proto__: Object
Run Code Online (Sandbox Code Playgroud)

如果我JSON.stringify这样做(像这样:)var totbounds = JSON.stringify(mybounds);,我会得到:

{"_southWest":{"lat":27.059125784374068,"lng":-127.96875},"_northEast":{"lat":50.62507306341435,"lng":-69.169921875}}
Run Code Online (Sandbox Code Playgroud)

我正在尝试解析它以获取_southWest lat(例如),但是这些都不起作用:

totbounds[_southWest][lat];
totbounds._southWest.lat;
Run Code Online (Sandbox Code Playgroud)

(注意,totbounds是字符串化的对象)

Tao*_*oPR 5

JSON.stringify 将JavaScript对象转换为字符串,因此您不能像尝试那样将其作为对象访问。字符串化JSON不是可以访问其属性的对象。该对象应保持为对象,而不是字符串。您不需要它来达到目的(如果我正确理解了您的问题)。

鉴于:

var mybound = {_southWest: e.LatLng, _northEast: e.LatLng}
_northEast: e.LatLng
    lat: 50.62507306341435
    lng: -69.169921875
  __proto__: Object
_southWest: e.LatLng
    lat: 27.059125784374068
    lng: -127.96875
   __proto__: Object
__proto__: Object
Run Code Online (Sandbox Code Playgroud)

要访问其属性,可以通过以下方式进行:

var lat = mybound["_southWest"]["lat"];    
Run Code Online (Sandbox Code Playgroud)