Основное различие между JSON и JSONP при работе с Ajax-запросами заключается в поддержке кросс-доменных запросов. 1
JSON (JavaScript Object Notation) не поддерживает кросс-доменные запросы из-за политики безопасности Same-Origin, которая реализована в веб-браузерах. 1 JSON может использоваться только для представления подмножества данных, из которых состоит обычный объект JavaScript, например, он не может представлять функции или объекты. 4
JSONP (JSON with Padding) позволяет делать кросс-доменные Ajax-вызовы. 1 Это достигается за счёт того, что сервер возвращает данные JSON, завернутые в вызов функции, которую может интерпретировать браузер. 1
Таким образом, JSONP — это методология использования формата JSON для обхода ограничения безопасности, а JSON — просто формат данных. 2