【问题标题】:Inserting a JS object into $http service [duplicate]将 JS 对象插入 $http 服务 [重复]
【发布时间】:2016-09-28 13:07:46
【问题描述】:

我正在尝试插入一个格式如下的对象:

$scope.newObj = {1: "N/A", 2: "KO", 3: "OK", 4: "OK", 5: "OK", 15: "N/A", 19: "OK"} 

我尝试使用以下 for 循环:

var objt = $scope.newObject;
      console.log($scope.newObject[0]) // undefined
for(i=0;i<$scope.newObj.length;i++)
{
   $http.post("insert?etat="+$scope.newObject[0]+"&id="+Object.keys(objt)) 
}

但它似乎不起作用。我到处都收到undefined。有没有人知道如何逐行从该对象中检索数据然后将值插入到服务中?

【问题讨论】:

  • 你能展示一下$http.post 的样例吗?
  • newObjnewObject 是不同的东西还是错字?
  • 这真的很令人困惑,因为你有不匹配的变量名,还有一个数组循环但没有提到数组。请参阅How to Ask 并提供所有相关详细信息。目前尚不清楚您正在使用什么或预期结果是什么

标签: javascript angularjs


【解决方案1】:

newObj 是一个对象而不是一个数组。您已尝试将其用作数组。所以只需要修改一个迭代代码:

使用以下代码:

var objt = $scope.newObject;
for(var key in objt)
{
   $http.post("insert?etat="+objt[key]+"&id="+key) 
}

【讨论】:

  • 最好使用if(objt.hasOwnProperty(key) 或循环Object.keys(objt) 但是我不认为这是OP 想要做的事情
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-07-17
  • 2018-12-31
  • 1970-01-01
  • 2020-03-22
  • 1970-01-01
  • 2013-06-08
  • 2020-10-25
相关资源
最近更新 更多