$ .each () перебирает символы в строке - мне нужно eval ()? - PullRequest
0 голосов
/ 04 мая 2010

У меня есть данные JSON, возвращаемые в виде коллекции:

var foo = ["6", "7", "33"]

с использованием JSONP в jQuery. Поскольку я использую JSONP, данные возвращаются в функцию обратного вызова, которая интерпретирует ее как строку вместо коллекции. Нужно ли запускать eval(foo) для строки в обратном вызове, прежде чем обрабатывать ее как коллекцию, или есть какие-то другие способы ее преобразования?

1 Ответ

2 голосов
/ 04 мая 2010

Если вы используете jQuery, вы должны делать .ajax с dataType: "jsonp", который должен отправлять проанализированные данные в ваш обратный вызов, а не в строку. Если это не работает для вас, или есть другие сложности, которых я не вижу, вы можете использовать $.parseJSON(foo) вместо eval(foo). Это вызовет собственный метод браузера JSON.parse, если он существует, или используйте eval, если его нет.

...