Почему не работает JSON.parse? - PullRequest
4 голосов
/ 05 марта 2011

Почему JSON.parse ведет себя не так, как ожидалось? В этом примере предупреждение не срабатывает:

<html xmlns="http://www.w3.org/1999/xhtml">

    <head>
        <title>Testing JSON.parse</title>
        <script type="text/javascript" src="js/json2.js">
            // json2.js can be found here: https://github.com/douglascrockford/JSON-js/blob/master/json2.js
        </script>
        <script type="text/javascript">
            function testJSONParse()
            {
                var text = '[{"a":"w","b","x"},{"a":"y","b":"z"}]';
                alert(JSON.parse(text));
            }
            window.onload = testJSONParse;
        </script>
    </head>
    <body>

    </body>
</html>

В firefox консоль ошибок сообщает «JSON.parse». Не очень наглядно ..

Это упрощение моей проблемы, которая использует AJAX для извлечения данных из базы данных и получает результат в виде строки JSON (строки, представляющей объект JSON) той же формы, что и text в примере выше.

Ответы [ 2 ]

10 голосов
/ 05 марта 2011

Ваш JSON отформатирован неправильно:

var text = '[{"a":"w","b","x"},{"a":"y","b":"z"}]';
                         ^-- This should be a ':'

Должно быть:

var text = '[{"a":"w","b":"x"},{"a":"y","b":"z"}]';
2 голосов
/ 05 марта 2011

ошибка при наборе

var text = '[{"a": "w", "b" :"x"}, {"a": "y","b": "z"}] ';

//below is correct one
var text = '[{"a":"w","b":"x"},{"a":"y","b":"z"}]';
alert(JSON.parse(text));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...