无法使用React native

时间:2019-03-26 12:30:22

标签: javascript arrays reactjs react-native

我无法从充满对象的状态数组中访问值。

将值存储在数组中时会得到值,但是当我尝试console.log状态时,它会打印出:[Object Object]。 我尝试了以下方法来获取值,例如:

var data=[{"coordinate":{"longitude":73.8679075241089,"latitude":18.515422222637756},"key":0,"color":"#ffc130"}];

console.log("data"+data[0].coordinate.longitude);

这就是我试图在React Native中获取值的方式:

    console.log("location "+JSON.stringify(this.state.markers));
    var data=JSON.stringify(this.state.markers);
    console.log("datamap"+JSON.parse(data));
    var dataparse = JSON.parse(data);
    console.log("data parse "+this.state.markers[0].coordinate.latitude);

这是我声明数组的地方:

class DefaultMarkers extends React.Component {
  constructor(props) {
    super(props);

    this.state = {
      region: {
        latitude: LATITUDE,
        longitude: LONGITUDE,
        latitudeDelta: LATITUDE_DELTA,
        longitudeDelta: LONGITUDE_DELTA,
      },
      markers: [],
    };
  }

我想将纬度和经度存储在一个数组中。

2 个答案:

答案 0 :(得分:1)

我使用 JSON.parse() JSON.stringify()进行解析

const data = JSON.parse(JSON.stringify(this.state.markers));

答案 1 :(得分:0)

更改console.log,用逗号分隔两个值,而不是将它们串联。

更改自

console.log("location "+JSON.stringify(this.state.markers));

收件人

console.log("location ", JSON.stringify(this.state.markers));

希望您将能够打印该值。