Javascript convertit une Chaîne en Tableau d'Objets

J'ai une Application NodeJS qui accepte une chaîne de caractères (téléchargé entrée!) J'ai Aucun Contrôle - dessus de l'entrée, je ne suis que la construction d'un Service REST pour Processus les données.

Cette chaîne est signifiait être un Tableau de Objets JSON que je peux ensuite faire une boucle pour extraire chaque élément ...

Je suis réception la suite (comme une chaîne de caractères):

[
  {Name: 'Jane',
       Id: '005b0000000MGa7AAG'},
  {Name: 'Tom',
       Id: '005b0000000MGa7AAF'}
]

Quand j'essaie de JSON.analyser cela je reçois

SyntaxError: Unexpected token N

À juste titre, parce que je savoir c'est Invalid JSON

alors que Ce chaîne suivante est JSON valide et passe http://jsonlint.com/:

[
    {"Name": "Jack",
        "Id": "005b0000000MGa7AAA"},
    {"Name": "Jill",
        "Id": "005b0000000MGa7AAB"}
]

Ma question est: Comment puis-je accepter la première d'entrée et de l'analyser afin de permettre:

parsed[0]['Name'] == 'Jane'
>> true

Mon premier instinct est de la chaîne de remplacer les clés (par ex. le Nom de "Nom") et ensuite d'essayer d'analyser. Mais si quelqu'un a une solution, je lui en serais reconnaissant.

L'utilisateur doit saisir le JSON?
le premier n'est pas dans le format json
Salut @ExplosionPills j'aurais du précisé que son un web-service qui accepte de JSON. Le téléchargement de la chaîne n'est pas la main-tapé par l'utilisateur au lieu de cela, il est généré par une Application JAVA (en dehors de mon contrôle) et envoyé à mon NodeJS application pour le traitement. Ils sont à m'envoyer inValid JSON... 🙁

OriginalL'auteur nelsonic | 2013-04-25