2016-07-04 65 views
7

我有这样的字符串:如何将字符串转换为对象Angularjs

$scope.text = '"{\"firstName\":\"John\",\"age\":454 }"'; 

,我要转换为JS对象:

$scope.tmp = {"firstName":"John","age":454 }; 

注:JSON.parse()不行! !

这是我在codepen

+0

'JSON.parse()'是我认为你正在寻找的东西。 - 另外,这是重复的。 – evolutionxbox

+0

谢谢@rayon – evolutionxbox

+0

这不是一个确切的副本。 OP在其框架内要求最好的答案(角度)。我知道JSON.Parse()的作品,但由于某些原因,还有其他的东西需要使用角度来做。 –

回答

10

样品您可以用样品中angular.fromJson()

做到这一点,它会一直$scope.tmp = angular.fromJson($scope.text);

JSON.Parse()angular.fromJson之间的区别,是角将检查以确保提供了一个字符串。如果它已经是一个对象,它将返回相同的对象。

+0

请在我的[http://codepen.io/essvision/pen/PzjGpQ] –

+1

检查你的答案你必须删除你的字符串的简单引号,使其工作:'$ scope.text =“{\”firstName \ “:\”约翰\“,\”年龄\“:454}”;' –

+0

像魔术一样工作! –