code: function areSame (a, b) {
      return a === 0 && b === 0 ? 1 / a === 1 / b : areSVZ(a, b);
  }
docs: Verifies that the two supplied values are the same value using the "SameValue" comparison.<br/>
  Note that this doesn't behave as the strict equality operator, but rather as a shim of ES6's
  [Object.is]{@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is}.
  Differences are that <code>0</code> and <code>-0</code> aren't the same value and, finally,
  <code>NaN</code> is equal to itself.<br/>
  See also {@link module:lamb.is|is} for a curried version building a predicate and
  {@link module:lamb.areSVZ|areSVZ} and {@link module:lamb.isSVZ|isSVZ} to perform a "SameValueZero"
  comparison.
  @example
  var testObject = {};
  
  _.areSame({}, testObject) // => false
  _.areSame(testObject, testObject) // => true
  _.areSame("foo", "foo") // => true
  _.areSame(0, -0) // => false
  _.areSame(0 / 0, NaN) // => true
  
  @memberof module:lamb
  @category Logic
  @see {@link module:lamb.is|is}
  @see {@link module:lamb.areSVZ|areSVZ}, {@link module:lamb.isSVZ|isSVZ}
  @see [SameValue comparison]{@link https://www.ecma-international.org/ecma-262/7.0/#sec-samevalue}
  @see [SameValueZero comparison]{@link https://www.ecma-international.org/ecma-262/7.0/#sec-samevaluezero}
  @since 0.50.0
  @param {*} a
  @param {*} b
  @returns {Boolean}