如何在angularJs中访问stdclass json对象?

时间:2016-06-01 05:21:54

标签: javascript angularjs json

我的JSON采用stdclass对象的形式。我怎样才能遍历我的JSON。我的JSON就像:

$scope.mytest=[  array(161) {
[0]=>
object(stdClass)#4 (14) {
  ["arrivalTime"]=>
  string(8) "17:00:00"
  ["availableSeats"]=>
  string(2) "42"
  ["boardingPointDetails"]=>
  array(6) {
    [0]=>
    object(stdClass)#5 (3) {
      ["code"]=>
      string(4) "1631"
      ["name"]=>
      string(9) "Koyambedu"
      ["time"]=>
      string(8) "09:30:00"
     } 
   ....
}];

请帮帮我。提前谢谢。

1 个答案:

答案 0 :(得分:1)

这看起来像一个php对象。 你应该在将它发送到你的JS

之前在php中编码
  // PHP side:
  return json_encode(yourObject)

然后将其返回给JS并解析它

// JS side
$http.get(...).then(function(res){
      JSON.parse(res) 
      ...
});

你应该得到这样的JSON:

$scope.mytest = [  { 
        "0" : {
            "arrivalTime" : "17:00:00",
            "availableSeats" : "42",
            "boardingPointDetails" : [{
                    "0" : {
                        "code" : "1631",
                        "name" : "Koyambedu",
                        "time" : "09:30:00"
                    }
                }
            ]
        }
        ....
    }
];

如果您可以访问数组的第一个元素:$scope.mytest[0]

如果要访问对象的属性:yourObject["keyname"] 例如:

var myobject = {
    "arrivalTime" : "17:00:00",   // myobject["arrivalTime"] or myobject.arrivalTime
    "availableSeats" : "42",
    "boardingPointDetails" : [   // myobject.boardingPointDetails
         {                   // myobject.boardingPointDetails[0]
            "0" : {               // myobject.boardingPointDetails[0]["0"]
                "code" : "1631",  // myobject.boardingPointDetails[0]["0"]["code"]
                "name" : "Koyambedu",
                "time" : "09:30:00"
            }
        }
    ]
}