Sinh: примеры (JAVASCRIPT)

Гиперболический синус в JavaScript: руководство
Раздел: Математика, Гиперболические
sinh(number): number

Описание функции Math.sinh

Функция Math.sinh() вычисляет гиперболический синус числа. Она применяется в математике, физике и инженерии для расчётов, связанных с гиперболическими функциями, например, в задачах теории относительности или при анализе цепей.

Аргумент функции — одно число x. Если передано не число, оно автоматически преобразуется в числовой тип. Функция возвращает гиперболический синус x, равный (ex - e-x) / 2. Для нуля результат нулевой. При больших по модулю значениях x может возвращаться бесконечность.

Короткие примеры использования

Пример с положительным числом:

console.log(Math.sinh(2));
3.626860407847019

Пример с отрицательным числом:

console.log(Math.sinh(-1));
-1.1752011936438014

Пример с нулём:

console.log(Math.sinh(0));
0

Пример с бесконечностью:

console.log(Math.sinh(Infinity));
Infinity

Похожие функции в JavaScript

Math.cosh(x) — гиперболический косинус. Используется, когда нужен косинус, а не синус.

Math.tanh(x) — гиперболический тангенс. Подходит для расчётов отношений гиперболических синуса и косинуса.

Math.asinh(x) — обратный гиперболический синус. Применяется для получения аргумента по значению функции.

Аналоги функции в других языках

В Python используется math.sinh(x) из модуля math. Пример:

import math
print(math.sinh(2))
3.626860407847019

В PHP существует sinh($x). Пример:

echo sinh(2);
3.626860407847

В MySQL есть функция SINH(x). Пример запроса:

SELECT SINH(2);
3.626860407847019

В C используется sinh(x) из библиотеки math.h. Пример:

#include <math.h>
#include <stdio.h>
int main() {
    printf("%f", sinh(2));
    return 0;
}
3.626860

Отличий в базовом поведении между языками обычно нет, но могут различаться точность и обработка особых случаев, например, переполнения.

Типичные ошибки

Передача строки, которую нельзя преобразовать в число, приводит к NaN:

console.log(Math.sinh("abc"));
NaN

Использование undefined также даёт NaN:

console.log(Math.sinh(undefined));
NaN

Передача null интерпретируется как 0:

console.log(Math.sinh(null));
0

Изменения в последних версиях

Функция Math.sinh() была добавлена в стандарт ECMAScript 2015 (ES6). С тех пор её поведение не менялось. В более старых средах функция может отсутствовать, но её можно реализовать через экспоненту.

Расширенные примеры

Вычисление гиперболического косинуса через sinh и cosh с использованием тождества:

Пример javascript
let x = 1;
let sinhVal = Math.sinh(x);
let coshVal = Math.cosh(x);
console.log(sinhVal * sinhVal + 1, coshVal * coshVal);
2.3810978455418165 2.3810978455418165

Имитация функции sinh через экспоненту для совместимости:

Пример javascript
function mySinh(x) {
    return (Math.exp(x) - Math.exp(-x)) / 2;
}
console.log(mySinh(2), Math.sinh(2));
3.626860407847019 3.626860407847019

Использование в расчёте длины цепной линии:

Пример javascript
let a = 2, x = 3;
let chainLength = 2 * a * Math.sinh(x / a);
console.log(chainLength);
7.525749485413204

Применение для аппроксимации больших чисел:

Пример javascript
console.log(Math.sinh(10), (Math.exp(10) - Math.exp(-10)) / 2);
11013.232874703393 11013.232874703393

JS sinh function comments

En
Sinh Returns the hyperbolic sine of a number