--- title: Number.prototype.toPrecision() slug: Web/JavaScript/Reference/Global_Objects/Number/toPrecision tags: - JavaScript - Method - Number - Prototype translation_of: Web/JavaScript/Reference/Global_Objects/Number/toPrecision ---
toPrecision()
メソッドは {{jsxref("Number")}} オブジェクトを指定された精度で表した文字列を返します。
numObj.toPrecision([precision])
precision
{{optional_inline}}{{jsxref("Number")}} オブジェクトを precision
で指定された桁で概数化された、固定小数点数、または指数表記で表した文字列です。概数の表現方法については {{jsxref("Number.prototype.toFixed()")}} メソッドの説明を参照してください。それは toPrecision()
にも適用されます。
引数 precision
が省略された場合、 {{jsxref("Number.prototype.toString()")}} のように振舞います。 precision
が整数の値ではない場合は、最も近い整数に概数化されます。
precision
が 1 と 100 の間 (両端を含む) でない場合、 {{jsxref("RangeError")}} が発生します。実装上はこの範囲を超えた値にも対応できます。 ECMA-262 では 21 桁までの精度のみを要求しています。let numObj = 5.123456 console.log(numObj.toPrecision()) // logs '5.123456' console.log(numObj.toPrecision(5)) // logs '5.1235' console.log(numObj.toPrecision(2)) // logs '5.1' console.log(numObj.toPrecision(1)) // logs '5' numObj = 0.000123 console.log(numObj.toPrecision()) // logs '0.000123' console.log(numObj.toPrecision(5)) // logs '0.00012300' console.log(numObj.toPrecision(2)) // logs '0.00012' console.log(numObj.toPrecision(1)) // logs '0.0001' // note that exponential notation might be returned in some circumstances console.log((1234.5).toPrecision(2)) // logs '1.2e+3'
仕様書 |
---|
{{SpecName('ESDraft', '#sec-number.prototype.toprecision', 'Number.prototype.toPrecision')}} |
{{Compat("javascript.builtins.Number.toPrecision")}}