在 AngularJS 应用程序中,我有一个存储在从 $http
返回的 data
中的对象,如下所示:
[{"var1":"1","var2":"2","var3":"3"}]
我希望能够获取“var2”
的值。
我认为这很容易:
$scope.myObj = data;
$scope.myVar = $scope.myObj.var2; //$scope.myvar should "2"
相反,$scope.myObj 返回未定义
如何获取 var2 的值?
最佳答案
在您的情况下,数据看起来像是一个数组。如果它的大小始终为 -1 数组,只需执行以下操作:
$scope.myObj = data[0]; //Add any necessary null checks
如果数组的大小 > 1,则通过循环遍历数组来相应地修改您的逻辑。
angular.isObject()
返回 true,因为数组也是一个对象。
您可以使用angular.isArray(obj)
检查之前isObject
以确保按原样过滤掉数组。如果你得到混合数据,即有时是对象,有时是具有相同对象的 size-1 数组,你也可以这样做:- $scope.myObj = [].concat(data)[0]
.
关于javascript - 从 $http 返回的 AngularJS 对象 - 如何获取键/值对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27823420/