【问题标题】:Angular Array to String角度数组到字符串
【发布时间】:2015-09-30 20:39:59
【问题描述】:

我想知道如何转换如下内容:

$scope.foo = [
               {name: "foo1", information : "bar1" },
               {name: "foo2", information : "bar2" }
             ]

转换成 JSON 字符串?我之前在 Stack Overflow 上搜索过这个问题,并被建议使用 angular.toJson(obj, pretty),我也在他们的网站上进行了研究,但我没能成功。

【问题讨论】:

  • 你试过JSON.stringify($scope.foo)吗?
  • JSON.stringify($scope.foo) 可能是?如果要转成String?
  • angular.toJson($scope.foo, true) 应该可以正常工作。你得到了什么错误? angular.toJson($scope.foo) 也可以使用,因为 pretty 是可选的
  • @charlietfl 说了什么。 angular.toJson() 已经存在了很长一段时间,并且是首选方法,因为它会去除任何以 $$ 为前缀的属性,因此您遇到的错误应该会暴露问题所在。

标签: angularjs


【解决方案1】:

我在 chrome 控制台上写了以下内容:

var foo = [
      {name: "foo1", information : "bar1" },
      {name: "foo2", information : "bar2" }
]
JSON.stringify(foo);

输出是: "[{"name":"foo1","information":"bar1"},{"name":"foo2","information":"bar2"}]"

我相信这就是你想要的。

【讨论】:

  • 如果在中继器中使用数组,则将包含角度哈希键,angular.toJson() 将它们剥离
  • Stringify 成功了!!!谢谢你们的帮助!我之前确实尝试过,但我犯了一个非常基本的错误;在我在 javascript 文件中声明数组之前,我调用了 Stringify(是的,我知道我很笨)。不过,结果还不错!
  • 在 chrome 控制台中再次测试,使用 ng-repeat 都不能很好地工作。如果你想用 ng-repeat 渲染你的列表,例如用 JSON.parse(foo) 将你的 json 数组转换回 javascript 数组。
猜你喜欢
  • 1970-01-01
  • 2019-07-29
  • 1970-01-01
  • 1970-01-01
  • 2014-05-16
  • 1970-01-01
  • 2017-10-01
  • 2020-03-28
  • 1970-01-01
相关资源
最近更新 更多