code: function (value) {
      value += '';
  
      if (value.search(/^\-?\d+$/) > -1) {
        return 'integer';
      }
  
      if (value.search(/^\-?\d+\.\d+[\d.]*$/) > -1) {
        return 'float';
      }
  
      if ('false' === value || 'true' === value) {
        return 'boolean';
      }
  
      if (value.search(/^\d{4}\-\d{2}\-\d{2}T\d{2}:\d{2}:\d{2}\.\d{3}Z?$/) > -1) {
        return 'datetime';
      }
  
      return 'string';
    }
docs: Detect the type of `value`. Returns 'integer', 'float', 'boolean' or 'string'; defaults to 'string'.
  
  @param {*} value
  
  @returns {String}