Version 1
[yaffs-website] / node_modules / core-js / modules / es6.reflect.define-property.js
1 // 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)
2 var dP          = require('./_object-dp')
3   , $export     = require('./_export')
4   , anObject    = require('./_an-object')
5   , toPrimitive = require('./_to-primitive');
6
7 // MS Edge has broken Reflect.defineProperty - throwing instead of returning false
8 $export($export.S + $export.F * require('./_fails')(function(){
9   Reflect.defineProperty(dP.f({}, 1, {value: 1}), 1, {value: 2});
10 }), 'Reflect', {
11   defineProperty: function defineProperty(target, propertyKey, attributes){
12     anObject(target);
13     propertyKey = toPrimitive(propertyKey, true);
14     anObject(attributes);
15     try {
16       dP.f(target, propertyKey, attributes);
17       return true;
18     } catch(e){
19       return false;
20     }
21   }
22 });