Тело PATCH-запроса только из изменённых полей формы
Форма редактирования хранит исходный объект с сервера и отредактированную копию. Отправлять нужно только изменения. Напишите функцию buildPatch(original, edited).
- В результат попадает ключ, если его значение в
editedотличается отoriginal. Вложенные объекты и массивы сравниваются по содержимому, а не по ссылке. - Ключ, который есть в
original, но отсутствует вeditedили равен тамundefined, попадает в результат со значениемnull— так сервер поймёт, что поле очищено. - Новый ключ, которого не было в
original, попадает в результат со своим значением. - Если изменений нет — пустой объект. Входные объекты не меняйте.
заготовка решения
function buildPatch(original, edited) {
// ваш код
return undefined;
}