aboutsummaryrefslogtreecommitdiff
path: root/files/uk/web/javascript/reference/global_objects/math/index.html
blob: 2a3acad478871784c539212ea1f79f822d498b4c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
---
title: Math
slug: Web/JavaScript/Reference/Global_Objects/Math
tags:
  - JavaScript
  - Math
  - Довідка
translation_of: Web/JavaScript/Reference/Global_Objects/Math
---
<div>{{JSRef}}</div>

<p><strong><code>Math</code></strong> - це вбудований об'єкт із полями і методами для реалізації математичних сталих та функцій. Не являється функцією.</p>

<p><code>Math</code> працює з числами типу {{jsxref("Number")}}. Він не підходить для роботи з {{jsxref("BigInt")}}.</p>

<h2 id="Опис">Опис</h2>

<p>На відміну від багатьох інших глобальних об'єктів, <code>Math</code> не являється конструктором. Всі поля і методи <code>Math</code> статичні. Тобто до сталої Пі потрібно звертатись  <code>Math.PI</code>, а функцію синуса викликати через <code>Math.sin(<var>x</var>)</code>, де <code><var>x</var></code> являється аргументом статичного методу. Всі константи задані із максимальною для дійсних чисел у JavaScript точністю.</p>

<h2 id="Властивості">Властивості</h2>

<dl>
 <dt>{{jsxref("Math.E")}}</dt>
 <dd>Стала Ейлера, основа натуральних логарифмів. Приблизно дорівнює <code>2.718</code>.</dd>
 <dt>{{jsxref("Math.LN2")}}</dt>
 <dd>Числове значення натурального логарифму від <code>2</code>. Приблизно дорівнює <code>0.693</code>.</dd>
 <dt>{{jsxref("Math.LN10")}}</dt>
 <dd>Числове значення натурального логарифму від <code>10</code>. Приблизно дорівнює <code>2.303</code>.</dd>
 <dt>{{jsxref("Math.LOG2E")}}</dt>
 <dd>Логарифм від <math><semantics><mi><code>e</code></mi><annotation encoding="TeX"></annotation></semantics></math><code>e</code> за основою 2, приблизно дорівнює <code>1.443</code>.</dd>
 <dt>{{jsxref("Math.LOG10E")}}</dt>
 <dd>Логарифм від <code>e</code> за основою 10, приблизно дорівнює <code>0.434</code>.</dd>
 <dt>{{jsxref("Math.PI")}}</dt>
 <dd>Значення відношення довжини кола до його діаметру, наближено дорівнює <code>3.14159</code>.</dd>
 <dt>{{jsxref("Math.SQRT1_2")}}</dt>
 <dd>Квадратний корінь від ½ (еквівалентно <math><semantics><mfrac><mn>1</mn><msqrt><mn>2</mn></msqrt></mfrac><annotation encoding="TeX">\frac {1}{\sqrt{2}}</annotation></semantics></math>). Наближено дорівнює <code>0.707</code>.</dd>
 <dt>{{jsxref("Math.SQRT2")}}</dt>
 <dd>Значення квадратного кореня від <code>2</code>, наближено <code>1.414</code>.</dd>
</dl>

<h2 id="Методи">Методи</h2>

<div class="note">
<p>Варто зазначити, що тригонометричні функції (<code>sin()</code>, <code>cos()</code>, <code>tan()</code>, <code>asin()</code>, <code>acos()</code>, <code>atan()</code>, <code>atan2()</code>) очікують (і повертають) значення кутів у радіанах.</p>

<p>Для конвертації радіан в градуси, розділіть значення на <code>(Math.PI / 180)</code>. Або помножте на цю величину для виконання зворотної конвертації</p>
</div>

<div class="note">
<p>Майте на увазі, що точність багатьох математичних функцій залежить від конкретної реалізації платформи. Тобто одна і та ж функція у різних браузерах може дати дещо різний результат. Навіть більше - один і той самий JS-рушій на різних ОС чи архітектурах також може дати різні результати!</p>
</div>

<dl>
 <dt>{{jsxref("Global_Objects/Math/abs", "Math.abs(x)")}}</dt>
 <dd>Повертає абсолютне значення (модуль) числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/acos", "Math.acos(x)")}}</dt>
 <dd>Повертає арккосинус числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/acosh", "Math.acosh(x)")}}</dt>
 <dd>Повертає значення гіперболічного арккосинуса числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/asin", "Math.asin(x)")}}</dt>
 <dd>Повертає арксинус числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/asinh", "Math.asinh(x)")}}</dt>
 <dd>Повертає значення гіперболічного арксинуса числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/atan", "Math.atan(x)")}}</dt>
 <dd>Повертає арктангенс числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/atanh", "Math.atanh(x)")}}</dt>
 <dd>Повертає значення гіперболічного арктангенса числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/atan2", "Math.atan2(y, x)")}}</dt>
 <dd>Повертає значення арктангенсу частки поданих чисел.</dd>
 <dt>{{jsxref("Global_Objects/Math/cbrt", "Math.cbrt(x)")}}</dt>
 <dd>Повертає кубічний корінь числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/ceil", "Math.ceil(x)")}}</dt>
 <dd>Повертає число, округлене "до більшого".</dd>
 <dt>{{jsxref("Global_Objects/Math/clz32", "Math.clz32(x)")}}</dt>
 <dd>Повертає кількість ведучих нулів 32-бітного цілочисельного уявлення даного числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/cos", "Math.cos(x)")}}</dt>
 <dd>Повертає косинус числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/cosh", "Math.cosh(x)")}}</dt>
 <dd>Повертає значення гіперболічного косинуса числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/exp", "Math.exp(x)")}}</dt>
 <dd>Повертає результат обчислення <code>E<var><sup>x</sup></var></code>, де <code><var>x</var></code> - це аргумент функції, а <code>E</code> - стала Ейлера (<code>2.718</code>…, основа натурального логарифму).</dd>
 <dt>{{jsxref("Global_Objects/Math/expm1", "Math.expm1(x)")}}</dt>
 <dd>Повертає різницю <code>exp(x)</code> і 1 (тобто значення виразу <math><semantics><mrow><msup><mi>e</mi><mi>x</mi></msup><mo>-</mo><mn>1</mn></mrow><annotation encoding="TeX">e^x - 1</annotation></semantics></math>).</dd>
 <dt>{{jsxref("Global_Objects/Math/floor", "Math.floor(x)")}}</dt>
 <dd>Повертає результат округлення "до меншого".</dd>
 <dt>{{jsxref("Global_Objects/Math/fround", "Math.fround(x)")}}</dt>
 <dd>Повертає найближче число із рухомою комою (крапкою)<a href="https://uk.wikipedia.org/wiki/%D0%A7%D0%B8%D1%81%D0%BB%D0%BE_%D0%BE%D0%B4%D0%B8%D0%BD%D0%B0%D1%80%D0%BD%D0%BE%D1%97_%D1%82%D0%BE%D1%87%D0%BD%D0%BE%D1%81%D1%82%D1%96" title="link to the wikipedia page on single precision"> одинарної точності</a> від аргументу.</dd>
 <dt>{{jsxref("Global_Objects/Math/hypot", "Math.hypot([x[, y[, …]]])")}}</dt>
 <dd>Повертає квадратний корінь від суми квадратів аргументів.</dd>
 <dt>{{jsxref("Global_Objects/Math/imul", "Math.imul(x, y)")}}</dt>
 <dd>Повертає результат 32-бітного цілочисельного множення аргументів.</dd>
 <dt>{{jsxref("Global_Objects/Math/log", "Math.log(x)")}}</dt>
 <dd>Повертає натуральний логарифм (㏒<sub>e</sub>, або ln) числа.</dd>
 <dt>{{jsxref("Global_Objects/Math/log1p", "Math.log1p(x)")}}</dt>
 <dd>Повертає натуральний логарифм (㏒<sub>e</sub>, або ln) виразу <code>1 + x</code> від числа<math><semantics><mi></mi><annotation encoding="TeX">x</annotation></semantics></math>.</dd>
 <dt>{{jsxref("Global_Objects/Math/log10", "Math.log10(x)")}}</dt>
 <dd>Повертає логарифм за основою 10 від аргументу.</dd>
 <dt>{{jsxref("Global_Objects/Math/log2", "Math.log2(x)")}}</dt>
 <dd>Повертає логарифм за основою 2 від аргументу.</dd>
 <dt>{{jsxref("Global_Objects/Math/max", "Math.max([x[, y[, …]]])")}}</dt>
 <dd>Повертає найбільше із нуля чи більше аргументів.</dd>
 <dt>{{jsxref("Global_Objects/Math/min", "Math.min([x[, y[, …]]])")}}</dt>
 <dd>Повертає найменше із нуля чи більше аргументів.</dd>
 <dt>{{jsxref("Global_Objects/Math/pow", "Math.pow(x, y)")}}</dt>
 <dd>Повертає результат піднесення до степеня <code>x<sup>y</sup></code>.</dd>
 <dt>{{jsxref("Global_Objects/Math/random", "Math.random()")}}</dt>
 <dd>Повертає псевдовипадкове число від <code>0</code> до <code>1</code>.</dd>
 <dt>{{jsxref("Global_Objects/Math/round", "Math.round(x)")}}</dt>
 <dd>Повертає значення аргументу, округлене до найближчого цілого.</dd>
 <dt>{{jsxref("Global_Objects/Math/sign", "Math.sign(x)")}}</dt>
 <dd>Повертає знак поданого числа. Визначає, чи являється аргумент додатним числом, від'ємним, чи дорівнює 0.</dd>
 <dt>{{jsxref("Global_Objects/Math/sin", "Math.sin(x)")}}</dt>
 <dd>Повертає значення синуса аргументу.</dd>
 <dt>{{jsxref("Global_Objects/Math/sinh", "Math.sinh(x)")}}</dt>
 <dd>Повертає значення гіперболічного синуса аргументу.</dd>
 <dt>{{jsxref("Global_Objects/Math/sqrt", "Math.sqrt(x)")}}</dt>
 <dd>Повертає додатне значення квадратного кореня від аргументу.</dd>
 <dt>{{jsxref("Global_Objects/Math/tan", "Math.tan(x)")}}</dt>
 <dd>Повертає значення тангенса аргументу.</dd>
 <dt>{{jsxref("Global_Objects/Math/tanh", "Math.tanh(x)")}}</dt>
 <dd>Повертає значення гіперболічного тангенса аргументу.</dd>
 <dt><code>Math.toSource()</code> {{non-standard_inline}}</dt>
 <dd>Повертає строку <code>"Math"</code>.</dd>
 <dt>{{jsxref("Global_Objects/Math/trunc", "Math.trunc(x)")}}</dt>
 <dd>Повертає цілу частину <code><var>x</var></code>, відкидаючи всю дробову частину.</dd>
</dl>

<h2 id="Специфікації">Специфікації</h2>

<table class="standard-table">
 <thead>
  <tr>
   <th scope="col">Специфікація</th>
  </tr>
 </thead>
 <tbody>
  <tr>
   <td>{{SpecName('ESDraft', '#sec-math-object', 'Math')}}</td>
  </tr>
 </tbody>
</table>

<h2 id="Підтримка_у_браузерах">Підтримка у браузерах</h2>

<p class="hidden">Таблиця сумісності на цій сторінці сформована автоматично із структурованих даних. Якщо ви маєте бажання зробити свій внесок до цих даних - будь-ласка, ось репозиторій <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a>.</p>

<div>{{Compat("javascript.builtins.Math")}}</div>

<h2 id="Дивіться_також">Дивіться також</h2>

<ul>
 <li>{{jsxref("Number")}}</li>
</ul>