Обновления атрибутов Kinvey

Ищете лучший подход к обновлению дочерних объектов объекта с использованием другого объекта, который содержит обновленные значения / новые записи.

Здесь param «pObj» - это объект, который уже есть у некоторых детей, просто хочет обновить pObj последними значениями, доступными в param «data».

Ниже кода я использовал бессерверную облачную платформу Kinvey. "Object.children" не поддерживается Kinvey - причина не ясна.

Код ниже у меня работает нормально, но выглядит немного некрасиво, а также имеет фиксированную глубину.

function mergeObjects(pObj, data) {
  var tempObj = {};
  if (pObj) {
    tempObj = pObj;
  }
  if (typeof(data) == "object") {
    for (var j in data) {
      if (!tempObj[j]) {
        tempObj[j] = {};
      }
      if (typeof(data[j]) == "object") {
        for (var k in data[j]) {
          if (!tempObj[j][k]) {
            tempObj[j][k] = {};
          }
          if (typeof(data[j][k]) == "object") {
            for (var l in data[j][k]) {
              if (!tempObj[j][k][l]) {
                tempObj[j][k][l] = {};
              }
              tempObj[j][k][l] = data[j][k][l];
            }
          } else {
            tempObj[j][k] = data[j][k];
          }
        }
      } else {
        tempObj[j] = data[j];
      }
    }
  }
  return tempObj;
}

Какой Kinvey SDK вы используете? или вы пытаетесь это реализовать на Kinvey BL?

Pranav Jadhav 06.04.2018 06:43

@Pranav In Kinvey BL

Jose G Varanam 06.04.2018 07:59
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
2
41
1

Ответы 1

Kinvey legacy BL использует узел 0.10, может это быть причиной того, что вы не можете использовать Object.children?

Однако он поддерживает lodash, поэтому, возможно, в модуле lodash есть параметры управления объектами, которые вы можете использовать вместо этого.

В качестве альтернативы вы можете проверить новый Услуги Flex, уровень микросервисов, который использует node6. Это позволяет вам встроить любой модуль npm, который вы хотите, и развернуть всю среду выполнения node.js в нашу среду выполнения FSR.

Другие вопросы по теме