Math.abs() в JavaScript

Math.abs() возвращает модуль числа, то есть число без знака.

console.log(Math.abs(-10));
console.log(Math.abs(10));

Результат:

10
10

Метод полезен, когда важен размер значения, а не его направление: больше оно нуля или меньше.

Что делает Math.abs()

Math.abs() превращает отрицательное число в положительное. Положительное число остается таким же.

let value = -25;
let result = Math.abs(value);

console.log(result);

Результат:

25

Исходная переменная при этом не меняется. Метод возвращает новое значение.

let value = -25;
let result = Math.abs(value);

console.log(value);
console.log(result);

Результат:

-25
25

Синтаксис

Math.abs(number)

Метод принимает одно значение - число, у которого нужно получить модуль.

console.log(Math.abs(-4.5));
console.log(Math.abs(0));

Результат:

4.5
0

Math.abs() не округляет число. Он только убирает знак минус, если он есть.

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

Для положительных чисел результат совпадает с исходным значением.

console.log(Math.abs(7));
console.log(Math.abs(7.8));

Результат:

7
7.8

Для отрицательных чисел знак меняется на положительный.

console.log(Math.abs(-7));
console.log(Math.abs(-7.8));

Результат:

7
7.8

Разница между числами

Math.abs() часто используют, чтобы узнать разницу между двумя числами без учета направления.

let expected = 100;
let actual = 94;

let difference = Math.abs(expected - actual);

console.log(difference);

Результат:

6

Если поменять числа местами, результат останется таким же.

console.log(Math.abs(100 - 94));
console.log(Math.abs(94 - 100));

Результат:

6
6

Это удобно, когда нужно понять, насколько значения отличаются, но не важно, какое из них больше.

Расстояние от нуля

Модуль числа можно воспринимать как расстояние от нуля.

let position = -12;
let distance = Math.abs(position);

console.log(distance);

Результат:

12

Например, значение -12 находится на расстоянии 12 от нуля. Знак показывает направление, а Math.abs() оставляет только само расстояние.

Итого

Math.abs() возвращает модуль числа.

  • Math.abs(-10) вернет 10.
  • Math.abs(10) тоже вернет 10.
  • Метод не меняет исходную переменную, а возвращает новое значение.
  • Math.abs() не округляет число, а только убирает знак минус.
  • Метод удобно использовать для разницы между числами и расстояния от нуля.