Math.atanh()

Math.atanh() 関数は、数値の双曲線逆正接 (ハイパーボリックアークタンジェント) を返します。

x(-1,1),Math.atanh(x)=arctanh(x)= the unique ysuch thattanh(y)=x\forall x \in \left( -1, 1 \right), \mathtt{\operatorname{Math.atanh}(x)} = \operatorname{arctanh}(x) = \text{ the unique } \; y \; \text{such that} \; \tanh(y) = x

構文

Math.atanh(x)

引数

x
数値。

返値

与えられた数値の双曲線逆正接 (ハイパーボリックアークタンジェント) です。

解説

atanh()Math の静的メソッドであるため、生成した Math オブジェクトのメソッドとしてではなく、常に Math.atanh() として使用するようにしてください (Math はコンストラクターではありません)。

Math.atanh() の使用

Math.atanh(-2);  // NaN
Math.atanh(-1);  // -Infinity
Math.atanh(0);   // 0
Math.atanh(0.5); // 0.5493061443340548
Math.atanh(1);   // Infinity
Math.atanh(2);   // NaN

1よりも大きな値もしくは -1 よりも小さな値に対しては、 NaN が返されます。

ポリフィル

|x|<1\left|x\right| < 1に対して、 artanh(x)=12ln(1+x1-x)\operatorname {artanh} (x) = \frac{1}{2}\ln \left( \frac{1 + x}{1 - x} \right) になり、次の関数でエミュレートできます。

Math.atanh = Math.atanh || function(x) {
  return Math.log((1+x)/(1-x)) / 2;
};

仕様書

仕様書
ECMAScript (ECMA-262)
Math.atanh の定義

ブラウザーの互換性

Update compatibility data on GitHub
デスクトップモバイルサーバー
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewAndroid 版 ChromeAndroid 版 FirefoxAndroid 版 OperaiOSのSafariSamsung InternetNode.js
atanhChrome 完全対応 38Edge 完全対応 12Firefox 完全対応 25IE 未対応 なしOpera 完全対応 25Safari 完全対応 8WebView Android 完全対応 38Chrome Android 完全対応 38Firefox Android 完全対応 25Opera Android 完全対応 25Safari iOS 完全対応 8Samsung Internet Android 完全対応 3.0nodejs 完全対応 0.12

凡例

完全対応  
完全対応
未対応  
未対応

関連情報