123456789101112131415161718192021222324 |
- // 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
- var dP = require('./_object-dp');
- var $export = require('./_export');
- var anObject = require('./_an-object');
- var toPrimitive = require('./_to-primitive');
- // MS Edge has broken Reflect.defineProperty - throwing instead of returning false
- $export($export.S + $export.F * require('./_fails')(function () {
- // eslint-disable-next-line no-undef
- Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 });
- }), 'Reflect', {
- defineProperty: function defineProperty(target, propertyKey, attributes) {
- anObject(target);
- propertyKey = toPrimitive(propertyKey, true);
- anObject(attributes);
- try {
- dP.f(target, propertyKey, attributes);
- return true;
- } catch (e) {
- return false;
- }
- }
- });
|