Math.sin() в JavaScript — синус кута
Загальний опис
Метод Math.sin() у JavaScript є частиною вбудованого об'єкта Math і використовується для обчислення синуса заданого числа. В основі його корисності лежить можливість використовувати його для різних математичних та наукових розрахунків, таких як робота з тригонометричними функціями.
Використання методу Math.sin() є відносно простим. Вам потрібно передати одне число (в радіанах) як аргумент, і метод поверне синус цього числа.
let angle = Math.PI / 4; // 45 градусів в радіанах
let result = Math.sin(angle);
console.log(result); // Виведе приблизно 0.7071067811865475
Щоб отримати значення синуса для кута в градусах, спершу потрібно конвертувати градуси в радіани:
function degreesToRadians(degrees) {
return degrees * (Math.PI / 180);
}
let angleInDegrees = 30;
let result = Math.sin(degreesToRadians(angleInDegrees));
console.log(result); // Виведе 0.5, оскільки sin(30°) = 0.5
Деякі важливі особливості Math.sin():
- Метод завжди повертає результат у діапазоні від -1 до 1.
- Якщо аргумент є
NaNабо відсутній, метод також повернеNaN. - Пам'ятайте про необхідність конвертації градусів в радіани, коли ви працюєте з тригонометричними функціями в JavaScript.
- Порада
-
Якщо вам потрібно швидко отримати синус і косинус одного й того ж числа, використовуйте спільні тригонометричні властивості для оптимізації обчислень. Наприклад, використовуючи відомість, що
автор: BondMath.cos(x) = Math.sin(x + Math.PI/2), ви можете зменшити кількість викликів до тригонометричних функцій. - Нотатка
-
Пам'ятайте, що метод
автор: BondMath.sin()приймає аргумент в радіанах, а не градусах. Щоб перетворити градуси в радіани, використовуйте формулурадіани = градуси * (Math.PI / 180). - Нотатка
-
Під час використання
автор: BondMath.sin()у математичних обчисленнях зверніть увагу на точність. Через обмеження машинної точності результат може відрізнятися від очікуваного, особливо для дуже великих або маленьких значень. - Нотатка
-
Використовуючи
Math.sin(), ви можете створювати анімації на основі синусоїдальних хвиль. Це корисно для імітації природних рухів, таких як коливання або пульсація.
автор: Bondlet t = 0; setInterval(() => { let value = Math.sin(t); // використовуйте value для анімації елемента t += 0.05; }, 50);
Синтаксис
Math.sin(x)
Параметри
x-
Число, яке представляє кут у радіанах.
автор: Bond
Повернення
sine-
Повертає синус числа
автор: Bondx, значення якого знаходиться в межах від -1 до 1 включно. ЯкщоxєInfinity,-InfinityабоNaN, то повертаєNaN.
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| 1 | 1 | 1 | 3 | 12 | 3 |
| Переглядач | ||||
|---|---|---|---|---|
| 4.4 | 18 | 4 | 1 |
| Переглядач | ||
|---|---|---|
| 0.10.0 | 1.0 |
Приклади
+ запропонувати свій приклад у пісочниці
У цьому прикладі ми створюємо анімаційний ефект "дихання" для елемента на веб-сторінці. Використовуючи Math.sin(), ми змінюємо розмір елемента так, щоб він "дихав" (збільшувався та зменшувався в ритмі синусоїди).
HTML
<div id="breathingElement">Демонстраційний елемент</div>
JS
let element = document.getElementById('breathingElement'); // Отримання елемента за його ID
let t = 0;
setInterval(() => {
let scale = 1 + 0.1 * Math.sin(t); // Зміна розміру на основі синусоїди
// Встановлення нового розміру елемента
element.style.transform = `scale(${scale})`;
t += 0.1; // Збільшення значення t для наступного кроку анімації
}, 50);
У цьому прикладі ми переводимо градуси в радіани та виводимо синус кута.
// Функція для перетворення градусів у радіани
function toRadians(degrees) {
return degrees * (Math.PI / 180);
}
let angleInDegrees = 45;
let angleInRadians = toRadians(angleInDegrees);
// Обчислення синуса кута
let sinValue = Math.sin(angleInRadians);
console.log(`Синус кута ${angleInDegrees} градусів дорівнює ${sinValue}`);
У цьому прикладі користувач може ввести кут у градусах, а потім натиснути кнопку, щоб обчислити синус цього кута. Результат обчислення буде відображено на екрані.
HTML
<header>
<h2 class="title">Math.sin()</h2>
<p class="description">Обчислює синус числа (значення подається в радіанах).</p>
</header>
<main>
<div class="result">
<label for="degreesInput">Введіть кут у градусах:</label>
<input type="number" id="degreesInput" value="30">
<button onclick="calculateSin()">Обчислити синус</button>
<p>Синус кута: <span id="resultValue">0.5</span></p>
</div>
</main>
CSS
body {
font-size: 16px;
line-height: 1.5;
font-family: monospace;
}
header {
background-color: #f1f1f1;
margin-bottom: 25px;
padding: 15px;
-webkit-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
-moz-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
header h2.title {
padding-bottom: 15px;
border-bottom: 1px solid #999;
}
header p.description {
font-style: italic;
color: #222;
}
.result {
background-color: #f8f8f8;
padding: 15px;
-webkit-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
-moz-box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
box-shadow: 0px 0px 3px 0px rgba(118, 118, 118, 1);
}
input, button {
margin-top: 10px;
}
JS
function calculateSin() {
const degrees = parseFloat(document.getElementById('degreesInput').value);
const radians = degrees * (Math.PI / 180);
const sinValue = Math.sin(radians).toFixed(4); // заокруглюємо до 4 знаків після коми
document.getElementById('resultValue').textContent = sinValue;
}
//# sourceURL=pen.js
Коментарі
Коментарів ще немає — будьте першим!