回答:
「ベースの変更」フォーミュラ/アイデンティティ
10を底とする対数の数値は、次の式で計算できます。
Math.log(x)
JavaScriptではx
(ln(x)と同じ)の自然対数を返すため、10を底とする場合はMath.log(10)
(ln(10)と同じ)で除算できます。
function log10(val) {
return Math.log(val) / Math.LN10;
}
Math.LN10
はの組み込みの事前計算済み定数なMath.log(10)
ので、この関数は基本的に次のものと同じです:
function log10(val) {
return Math.log(val) / Math.log(10);
}
return Math.log(n) / Math.log(base);
const logBase = (n, base) => Math.log(n) / Math.log(base);
Math.log10 = function(n) {
return (Math.log(n)) / (Math.log(10));
}
その後、行うことができます
Math.log10(your_number);
注:最初Math.prototype.log10 = ...
はこれを行うことを考えましたが、ユーザーCMSはMathがこのように機能しないことを指摘したので、.prototype
パーツを編集しました。
.prototype
部品を外すだけです;)
FF 25+はMath.log10
メソッドをサポートしています。あなたはポリフィルを使うかもしれません:
if (!Math.log10) Math.log10 = function(t){ return Math.log(t)/Math.LN10; };
デスクトップブラウザ
Chrome Firefox (Gecko) Internet Explorer Opera Safari 38 25 (25) Not supported 25 7.1
モバイルブラウザ
Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile Not supported Not supported 25.0 (25) Not supported Not supported iOS 8
Math.log10(x)
!😁
トップの答えは、任意のベースの罰金ですが、問題は、ログベース10に関してれ、およびMath.log10(x)
されている2015年以来、すべてのブラウザ間で標準 *
* IEを除き、何らかの理由でそれが重要である場合。
ベース10の使用Math.log10()
。
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/log10にあるドキュメントを参照してください