AngularJS 从 $http 返回的对象 - 如何获得 key/value 对
AngularJS object returned from $http - how to get key/value pairs
在 AngularJS 应用程序中,我在 data
中存储了一个从 $http
返回的对象,看起来像这样:
[{"var1":"1","var2":"2","var3":"3"}]
我希望能够得到"var2"
的值。
我认为这很容易:
$scope.myObj = data;
$scope.myVar = $scope.myObj.var2; //$scope.myvar should "2"
相反,$scope.myObj returns undefined
如何访问 var2 的值?
在您的案例中,数据似乎是一个数组。如果它的大小始终为 -1 数组,则只需执行以下操作:
$scope.myObj = data[0]; //Add any necessary null checks
如果数组的大小大于 1,则通过遍历数组相应地修改逻辑。
angular.isObject()
returns 正确,因为数组也是一个对象。
您可以在检查 isObject
之前使用 angular.isArray(obj)
以确保按原样过滤掉数组。如果你得到混合数据,即有时是对象,有时是大小为 1 的数组,你也可以这样做:- $scope.myObj = [].concat(data)[0]
.
在 AngularJS 应用程序中,我在 data
中存储了一个从 $http
返回的对象,看起来像这样:
[{"var1":"1","var2":"2","var3":"3"}]
我希望能够得到"var2"
的值。
我认为这很容易:
$scope.myObj = data;
$scope.myVar = $scope.myObj.var2; //$scope.myvar should "2"
相反,$scope.myObj returns undefined
如何访问 var2 的值?
在您的案例中,数据似乎是一个数组。如果它的大小始终为 -1 数组,则只需执行以下操作:
$scope.myObj = data[0]; //Add any necessary null checks
如果数组的大小大于 1,则通过遍历数组相应地修改逻辑。
angular.isObject()
returns 正确,因为数组也是一个对象。
您可以在检查 isObject
之前使用 angular.isArray(obj)
以确保按原样过滤掉数组。如果你得到混合数据,即有时是对象,有时是大小为 1 的数组,你也可以这样做:- $scope.myObj = [].concat(data)[0]
.