static alphabeticalKeyOrderStringify(value) {
    if (Array.isArray(value)) {
      return shaka.util.ObjectUtils.arrayStringify_(value);
    } else if (typeof value == 'function') {
      // For safety, skip functions.  For function x,
      // x.prototype.constructor.prototype === x.prototype, so all functions
      // contain circular references if treated like Objects.
      return '';
    } else if (value instanceof Object) {
      return shaka.util.ObjectUtils.objectStringify_(value);
    } else {
      return JSON.stringify(value);
    }
  }
Constructs a string out of a value, similar to the JSON.stringify method.
Unlike that method, this guarantees that the order of the keys in an
object is alphabetical, so it can be used as a way to reliably compare two
objects.

@param {?} value
@return {string}