Recentemente, começamos a usar a biblioteca JSON3 porque
- Serializa corretamente os objetos de invólucro primitivos.
- Lança um TypeError ao serializar estruturas cíclicas (JSON 2 recorre até que a pilha de chamadas estoure).
- Utiliza testes de recursos para detectar implementações JSON nativas quebradas ou incompletas (JSON 2 apenas verifica a presença das funções nativas). Os testes são executados apenas uma vez no tempo de execução, portanto, não há custo de desempenho adicional ao analisar ou serializar valores.
Você pode baixá-lo neste link
Link