How to convert string to object in Angularjs
我有一根绳子,像:
1
| $scope.text = '"{"firstName":"John","age":454 }"'; |
我想转换成JS对象:
1
| $scope.tmp = {"firstName":"John","age":454 }; |
Note: JSON.parse() doesn't work!!
It's my sample in codepen
- 我想你要找的是JSON.parse()。-另外,这是一个副本。
- 谢谢你@rayon
- 这不是一个确切的副本。OP要求在其框架内获得最佳答案(角度)。我知道json.parse()可以工作,但出于某些原因,还有其他一些事情需要用angular来完成。
- @进化Xbox,JSON.parse()不起作用
- 这是由于额外的报价。去掉外部的单引号,然后JSON.parse就可以工作了。
你可以用angular.fromjson()来完成。
在你的样品中,可能是$scope.tmp = angular.fromJson($scope.text);。
JSON.Parse()和angular.fromJson之间的区别在于,角度将检查以确保提供了一个字符串。如果它已经是一个对象,它将返回同一个对象。
- 请在我的[codepen.io/essvision/pen/pzjgpq]中检查您的答案。
- 您必须删除字符串周围的简单引号才能使其正常工作:$scope.text ="{"firstName":"John","age":454 }";。
- 像魔法一样工作!