UNPKG

642 BJavaScriptView Raw
1'use strict';
2var $propertyIsEnumerable = {}.propertyIsEnumerable;
3// eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
4var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
5
6// Nashorn ~ JDK8 bug
7var NASHORN_BUG = getOwnPropertyDescriptor && !$propertyIsEnumerable.call({ 1: 2 }, 1);
8
9// `Object.prototype.propertyIsEnumerable` method implementation
10// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable
11exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {
12 var descriptor = getOwnPropertyDescriptor(this, V);
13 return !!descriptor && descriptor.enumerable;
14} : $propertyIsEnumerable;