如何在angularJs中转换json数据

如何在angularJs中转换json数据,angularjs,json,Angularjs,Json,我正在从服务获取json数据。这是我的json数据: [ { "id":"1", "body":"sample text", "read":"true", "checked":"true" }, { "id":"2", "body":"sample text", "read":"true", "checked":"false" } ] 我想把它读为id=2,read=true,如何将此json字符串格式转换为实际的数据类型。您想将json字符串传递给。这

我正在从服务获取json数据。这是我的json数据:

[
 {
  "id":"1",
  "body":"sample text",
  "read":"true",
  "checked":"true"
 },
 {
  "id":"2",
  "body":"sample text",
  "read":"true",
  "checked":"false"
 }
]

我想把它读为id=2,read=true,如何将此json字符串格式转换为实际的数据类型。

您想将json字符串传递给。这将返回一个可以正常使用的JavaScript对象。

您需要在数组中循环并处理当前表示为文本的布尔值。在下面的示例中,我使用JSON.parse处理布尔文本,然后将结果保存回read变量。Save应用于id,但在本例中我选择了parseInt

.controller('MyCtrl', function($scope) {

//example mock http call
function getHttpData() {
  return [{
    "id": "1",
    "body": "sample text",
    "read": "false",
    "checked": "true"
  }, {
    "id": "2",
    "body": "sample text",
    "read": "true",
    "checked": "false"
  }];
}

function getData() {
  var data = getHttpData();

  //process array as required
  data.forEach(function(value) {
    value.id = parseInt(value.id);
    value.read = JSON.parse(value.read);
  });

  return data;
}

$scope.data = getData();
});
在这里拉小提琴:

您所说的数据类型是什么意思?您应该已经能够这样访问它了。请注意,您有一个数组,因此需要执行数据[0].id=2;数据类型意味着我试图在控制器中检查布尔值true或false,但它们像“true”“false”一样出现,id是“1”。您所说的实际数据类型是什么意思。你能告诉我你想要的最终产品是什么吗。您希望显示数据或对其进行一些计算。