SameValueNonNumber.js 538 B

123456789101112131415161718
  1. 'use strict';
  2. var $TypeError = require('es-errors/type');
  3. var SameValue = require('./SameValue');
  4. var SameType = require('./SameType');
  5. // https://262.ecma-international.org/16.0/#sec-samevaluenonnumeric
  6. module.exports = function SameValueNonNumber(x, y) {
  7. if (typeof x === 'number') {
  8. throw new $TypeError('Assertion failed: SameValueNonNumber does not accept Number values');
  9. }
  10. if (!SameType(x, y)) {
  11. throw new $TypeError('SameValueNonNumber requires two non-Number values of the same type.');
  12. }
  13. return SameValue(x, y);
  14. };