Response.json не показывая поля со значением undefined
Response.json не отображаются поля со значением неопределенных
Я реализует API узла для управления данными в базе данных Монго. Запросы дают мне право JSON
. Когда я отправляю этот JSON
клиенту React, поля, содержащие undefined
, не отображаются. Что я делаю не так? Есть ли работа?
Чтобы сузить область моей проблемы, добавьте код ниже на сервер узла. console.log
напечатает правильный выход. Он будет, например, включать status: undefined
, однако res.json
не будет содержать ни одного узла со значением undefined
.
app.get("/test", function(req, res) {
let test = {
document: "test",
data: {
products: [
{
id: 123,
type: "smartphone",
name: "Motorola Moto G",
instock: true,
status: undefined,
link: null
},
{
id: 456,
type: "notsosmartphone",
name: "Samsung S7",
instock: false,
status: "burning",
link: undefined
}
],
length: 2,
date_created: '20161015T09:15',
status: undefined,
person: {name: "Kathy", age: 30, cute: true},
arr:[123,"abc",{"a":"1"},{"b":"2"},{"c":"3"}]
}
};
console.log(test);
res.json(test);
});
Спасибо Филиппу! Мне нужно показать json точно так же, как он хранится в базе данных, и я не влияю на то, как эти данные хранятся. Есть ли такое поведение? –
, если «точно так же, как он хранится в базе данных» с «неопределенными» значениями, то это не произойдет ... как я уже сказал, 'undefined' является недопустимым типом данных JSON –
Еще раз спасибо Фелипе! Мне не нравится это поведение, но теперь я хотя бы понимаю, что происходит ... ;-) Я буду использовать замену, как вы предложили в качестве лучшей альтернативы. –