Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> JavaScript

Cách lấy giá trị tuyệt đối (absolute value) của số trong JavaScript?

Sử dụng hàm Math.abs(x) để lấy giá trị tuyệt đối (absolute value) của số. Trả về số không âm.

Cú pháp

Math.abs(x)
  • x: Số bất kỳ (number).
  • Trả về: |x| (giá trị tuyệt đối).
  • Nếu x không phải số → ép kiểu sang number (null → 0, string số → number, khác → NaN).

Ví dụ

<!DOCTYPE html>
<html>
<body>
    <script>
        document.write("Math.abs(-10): " + Math.abs(-10) + "<br>");   // 10
        document.write("Math.abs(null): " + Math.abs(null) + "<br>");   // 0
        document.write("Math.abs(20): " + Math.abs(20) + "<br>");       // 20
        document.write("Math.abs('-5'): " + Math.abs('-5') + "<br>");   // 5 (ep kieu string)
        document.write("Math.abs('abc'): " + Math.abs('abc') + "<br>"); // NaN
    </script>
</body>
</html>

Ứng dụng thực tế:

// Khoảng cách giữa 2 điểm
function distance(x1, y1, x2, y2) {
    return Math.sqrt(
        Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2)
    );
}

// Hoặc dùng Math.hypot (ES2015)
function distance(x1, y1, x2, y2) {
    return Math.hypot(x2 - x1, y2 - y1);
}

// Kiểm tra sai số trong khoảng cho phép
function approxEqual(a, b, epsilon = 0.001) {
    return Math.abs(a - b) < epsilon;
}

Lưu ý:

  • Math.abs() là hàm static của Math, không phải method của Number.
  • Đối với BigInt, dùng x < 0 ? -x : x (Math.abs không hỗ trợ BigInt).