У меня есть конечная точка API, которая возвращается в формате JSON. Если у пользователя много друзей, он вернет массив, состоящий из имен друзей пользователя, но если у пользователя нет друзей, он вернет NULL.
Странная проблема - в JSON:
[].length //returns 1
Вывод из конечной точки GraphQL:
{
"data": {
"users": {
"friends": null
}
}
}
console.info(JSON.stringify(resultJSON)); // displays []
Итак, как мне проверить, возвращает ли поле NUll или нет?
Я использую GraphQL для API. Итак, он возвращается в формате JSON. Я искренне смущен тем, что он возвращает 1 из пустого массива.
Не могли бы вы отредактировать свой вопрос, включив в него необработанный JSON типичного ответа?
У вас есть контроль над этим API? Было бы намного проще работать, если бы ни один друг не возвращал пустой массив.
да. Я сам реализовал эту конечную точку. но graphql - это язык с очень строгой типизацией. У меня есть массив объектов в качестве возвращаемого значения. Ничего не могу изменить.
если этот объект является «выходом», то resultJSON не тот объект. Этот console.info(JSON.stringify(resultJSON)); не может воспроизводить [] на показанном "выходе". Пожалуйста, обновите фактический ответ и немного кода.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Я не уверен, откуда вы это берете:
JSON.parse('[]').length === [].length === 0