1'use strict'; 2var $export = require('./_export'); 3var $fails = require('./_fails'); 4var aNumberValue = require('./_a-number-value'); 5var $toPrecision = 1.0.toPrecision; 6 7$export($export.P + $export.F * ($fails(function () { 8 // IE7- 9 return $toPrecision.call(1, undefined) !== '1'; 10}) || !$fails(function () { 11 // V8 ~ Android 4.3- 12 $toPrecision.call({}); 13})), 'Number', { 14 toPrecision: function toPrecision(precision) { 15 var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!'); 16 return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision); 17 } 18}); 19