es-abstract
Version:
ECMAScript spec abstract operations.
19 lines (14 loc) • 496 B
JavaScript
var $TypeError = require('es-errors/type');
var isObject = require('../helpers/isObject');
var isPropertyKey = require('../helpers/isPropertyKey');
// https://262.ecma-international.org/6.0/#sec-ordinaryhasproperty
module.exports = function OrdinaryHasProperty(O, P) {
if (!isObject(O)) {
throw new $TypeError('Assertion failed: Type(O) is not Object');
}
if (!isPropertyKey(P)) {
throw new $TypeError('Assertion failed: P must be a Property Key');
}
return P in O;
};
;