--- title: Math.log10() short-title: log10() slug: Web/JavaScript/Reference/Global_Objects/Math/log10 page-type: javascript-static-method browser-compat: javascript.builtins.Math.log10 sidebar: jsref --- The **`Math.log10()`** static method returns the base 10 logarithm of a number. That is βˆ€x>0,π™ΌπšŠπšπš‘.πš•πš˜πšπŸ·πŸΆ(𝚑)=log10(x)=the unique y such that 10y=x\forall x > 0,\;\mathtt{\operatorname{Math.log10}(x)} = \log_{10}(x) = \text{the unique } y \text{ such that } 10^y = x {{InteractiveExample("JavaScript Demo: Math.log10()")}} ```js interactive-example console.log(Math.log10(100000)); // Expected output: 5 console.log(Math.log10(2)); // Expected output: 0.3010299956639812 console.log(Math.log10(1)); // Expected output: 0 console.log(Math.log10(0)); // Expected output: -Infinity ``` ## Syntax ```js-nolint Math.log10(x) ``` ### Parameters - `x` - : A number greater than or equal to 0. ### Return value The base 10 logarithm of `x`. If `x < 0`, returns {{jsxref("NaN")}}. ## Description Because `log10()` is a static method of `Math`, you always use it as `Math.log10()`, rather than as a method of a `Math` object you created (`Math` is not a constructor). This function is the equivalent of `Math.log(x) / Math.log(10)`. For `log10(e)`, use the constant {{jsxref("Math.LOG10E")}}, which is 1 / {{jsxref("Math.LN10")}}. ## Examples ### Using Math.log10() ```js Math.log10(-2); // NaN Math.log10(-0); // -Infinity Math.log10(0); // -Infinity Math.log10(1); // 0 Math.log10(2); // 0.3010299956639812 Math.log10(100000); // 5 Math.log10(Infinity); // Infinity ``` ## Specifications {{Specifications}} ## Browser compatibility {{Compat}} ## See also - [Polyfill of `Math.log10` in `core-js`](https://github.com/zloirock/core-js#ecmascript-math) - [es-shims polyfill of `Math.log10`](https://www.npmjs.com/package/math.log10) - {{jsxref("Math.exp()")}} - {{jsxref("Math.log()")}} - {{jsxref("Math.log1p()")}} - {{jsxref("Math.log2()")}} - {{jsxref("Math.pow()")}}