code: function processProperty(item, property, value) {
      if (value !== null && typeof value === "object") {
          processObjectProperty(item, property, value);
          return;
      }
      if (!item.hasOwnProperty(property)) {
          item[property] = null;
      }
  
      //Boolean type
      if (value === false && item[property] == null) {
          delete item.$changedProps[property];
          return;
      }
  
      //Float type
      if (Number.isFinite(item[property])) {
          item[property] = item[property] + "";
      }
  
      //Other types
      // console.log("OTHER TYPES, value:", value);
      if (item[property] !== value) {
          item.$changedProps[property] = value;
      } else {
          delete item.$changedProps[property];
      }
  }
docs: Created by kib357 on 24/07/15.