Наповнення JS розділу

Добридень, Пані та Панове, завдяки вам вдалося зібрати більше 19тис грн з необхідних 15тис на впровадження JS розділу.

JS розділ вже впроваджено - переходимо до його наповнення і почнемо бігти довгий марафон, адже JS має більше 1100 різноманітних методів, властивостей, подій і т.д., які необхідно описати.

Будемо працювати, і вдень, і вночі, щоб орієнтовно взимку закінчити наповнювати JS розділ!

Ви також можете допомогти нам в цьому. Долучайтеся до нашої спільноти в дискорді - ставайте її частиною і допомагайте нашому розвитку.

Також, підтримуйте нас матеріально.

JS метод Math.sin()

Загальний опис

Метод 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.
Нотатка:

Пам'ятайте, що метод Math.sin() приймає аргумент в радіанах, а не градусах. Щоб перетворити градуси в радіани, використовуйте формулу радіани = градуси * (Math.PI / 180).

Нотатка:

Використовуючи Math.sin(), ви можете створювати анімації на основі синусоїдальних хвиль. Це корисно для імітації природних рухів, таких як коливання або пульсація.

let t = 0;
setInterval(() => {
   let value = Math.sin(t);
   // використовуйте value для анімації елемента
   t += 0.05;
}, 50);
Нотатка:

Під час використання Math.sin() у математичних обчисленнях зверніть увагу на точність. Через обмеження машинної точності результат може відрізнятися від очікуваного, особливо для дуже великих або маленьких значень.

Порада:

Якщо вам потрібно швидко отримати синус і косинус одного й того ж числа, використовуйте спільні тригонометричні властивості для оптимізації обчислень. Наприклад, використовуючи відомість, що Math.cos(x) = Math.sin(x + Math.PI/2), ви можете зменшити кількість викликів до тригонометричних функцій.

Синтаксис

Math.sin(x)

Параметри

*x

Число, яке представляє кут у радіанах.

Return

sine

Повертає синус числа x, значення якого знаходиться в межах від -1 до 1 включно. Якщо x є Infinity, -Infinity або NaN, то повертає NaN.

Переглядачі

Переглядач

1

1

1

3

12

Переглядач

4.4

18

4

1

Переглядач

0.10.0

1.0

Приклади


У цьому прикладі користувач може ввести кут у градусах, а потім натиснути кнопку, щоб обчислити синус цього кута. Результат обчислення буде відображено на екрані.

У цьому прикладі ми переводимо градуси в радіани та виводимо синус кута.

// Функція для перетворення градусів у радіани
function toRadians(degrees) {
    return degrees * (Math.PI / 180);
}

let angleInDegrees = 45;
let angleInRadians = toRadians(angleInDegrees);

// Обчислення синуса кута
let sinValue = Math.sin(angleInRadians);

console.log(`Синус кута ${angleInDegrees} градусів дорівнює ${sinValue}`);

У цьому прикладі ми створюємо анімаційний ефект "дихання" для елемента на веб-сторінці. Використовуючи Math.sin(), ми змінюємо розмір елемента так, щоб він "дихав" (збільшувався та зменшувався в ритмі синусоїди).

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);