Używam funkcji kątowej fromJson do parsowania łańcucha json. Jeśli json jest prostą tablicą, taką jak „[1, 2]”, to działa następujący kod. Ale potrzebuję szeregu słowników.
var str = "[{"title":"hi"}, {"title":"what"}]"
alert(str) //1
alert(str.length) //2
var j = angular.fromJson(str)
alert(j) //3
alert(j.length) //4
Alarmy 1 i 2 są reprezentowane przez ciąg znaków 3 i 4 nie są, co oznacza, że fromJson ma błąd.
Uwaga: Nie ma to nic wspólnego z funkcjami JSON.parse ani $ ._ parseJSON. Z pewnych powodów muszę użyć kątowego.
Odpowiedzi:
1 dla odpowiedzi № 1To dlatego, że masz niepoprawny JSON. Aby json był poprawny, musisz zawijać właściwości w cudzysłowy, a nie w pojedyncze cudzysłowy. Więc spróbuj użyć
"[{"title":"hi"}, {"title":"what"}]"
Widzieć doc
Nazwy właściwości muszą być ciągami podwójnymi; końcowe przecinki są zabronione.