此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。

View in English Always switch to English

Math.acosh()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨2015年7月⁩.

Math.acosh() 函数返回一个数的反双曲余弦值,即:

x1,Math.acosh(x)=arcosh(x)= the unique y0such thatcosh(y)=x\forall x \geq 1, \mathtt{\operatorname{Math.acosh}(x)} = \operatorname{arcosh}(x) = \text{ 唯一的} ; y \geq 0 ; \text{使得} ; \cosh(y) = x

尝试一下

console.log(Math.acosh(0.999999999999));
// Expected output: NaN

console.log(Math.acosh(1));
// Expected output: 0

console.log(Math.acosh(2));
// Expected output: 1.3169578969248166

console.log(Math.acosh(2.5));
// Expected output: 1.566799236972411

语法

js
Math.acosh(x)

参数

x

一个数字。

返回值

返回给定数的反双曲余弦值,如果该数小于 1 则返回 NaN

描述

因为 acosh()Math 的静态方法,所以你应该通过 Math.acosh() 调用,而不是作为你创建的 Math 对象的方法(Math 不是构造函数)。

示例

使用 Math.acosh()

js
Math.acosh(-1); // NaN
Math.acosh(0); // NaN
Math.acosh(0.5); // NaN
Math.acosh(1); // 0
Math.acosh(2); // 1.3169578969248166

当参数小于 1 时,Math.acosh() 将返回 NaN

向下兼容

x1x \geq 1 时,都有 arcosh(x)=ln(x+x2-1)\operatorname {arcosh} (x) = \ln \left(x + \sqrt{x^{2} - 1} \right) ,因此可以使用以下函数实现:

js
Math.acosh =
  Math.acosh ||
  function (x) {
    return Math.log(x + Math.sqrt(x * x - 1));
  };

规范

Specification
ECMAScript® 2026 Language Specification
# sec-math.acosh

浏览器兼容性

参见