You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
16 lines
607 B
JavaScript
16 lines
607 B
JavaScript
var pIE = require('./_object-pie')
|
|
, createDesc = require('./_property-desc')
|
|
, toIObject = require('./_to-iobject')
|
|
, toPrimitive = require('./_to-primitive')
|
|
, has = require('./_has')
|
|
, IE8_DOM_DEFINE = require('./_ie8-dom-define')
|
|
, gOPD = Object.getOwnPropertyDescriptor;
|
|
|
|
exports.f = require('./_descriptors') ? gOPD : function getOwnPropertyDescriptor(O, P){
|
|
O = toIObject(O);
|
|
P = toPrimitive(P, true);
|
|
if(IE8_DOM_DEFINE)try {
|
|
return gOPD(O, P);
|
|
} catch(e){ /* empty */ }
|
|
if(has(O, P))return createDesc(!pIE.f.call(O, P), O[P]);
|
|
}; |