Phương thức tĩnh Math.acos() trong JavaScript
Bùi Tấn Lực
- 919
- 08/09/2025
Chức năng của Phương thức tĩnh Math.acos() trong JavaScript
Phương thức tĩnh Math.acos() trong JavaScript dùng để tính cô-sin ngược của một số , truyền vào giá trị cos và tính ra được số góc tính bằng đơn vị radian, giá trị truyền vào phải từ -1 tới 1 nếu không phải giá trị trong khoảng này thì sẽ trả kết quả về NaN (không hợp lệ).
Cú pháp của Phương thức tĩnh Math.acos() trong JavaScript
Math.acos(giatri);
giatri: Giá trị là số từ -1 tới 1.
Code Phương thức tĩnh Math.acos() trong JavaScript
Math.acos(1);
<script>
document.write(Math.acos(1)+"<br>"); // Kết quả: 0 (cô-sin của 0 =1)
document.write(Math.acos(-1)+"<br>"); // Kết quả: 3.141592653589793 (≈ π (pi))
document.write(Math.acos(0)+"<br>"); // Kết quả: 1.5707963267948966 (≈ π/2 (pi/2))
document.write(Math.acos(0.5)+"<br>"); // Kết quả: 1.0471975511965979 (≈ π/3 (pi/3))
document.write(Math.acos(1.2)+"<br>"); // Kết quả: NaN (Không hợp lệ, giá trị phải từ -1 tới 1)
</script>
Kết quả:
0
3.141592653589793
1.5707963267948966
1.0471975511965979
NaN
Ứng dụng Math.acos() trong JavaScript để tính góc từ giá trị cosin
Math.acos() đặc biệt hữu ích khi giá trị đầu vào là cosin của một góc và cần tìm lại góc tương ứng. Cách này thường xuất hiện trong các bài toán hình học, xử lý vector hoặc tính toán liên quan đến hướng và độ lệch giữa hai đối tượng.
Tính góc từ giá trị cosin của một số
Hàm nhận một giá trị trong khoảng từ -1 đến 1 và trả về góc tương ứng theo đơn vị radian. Chẳng hạn, khi biết cosin bằng 0.5, có thể lấy góc bằng cách truyền trực tiếp giá trị này vào Math.acos().
const cosValue = 0.5;
const angle = Math.acos(cosValue);
console.log(angle);
Kết quả là khoảng 1.0472 radian, tương đương với góc 60 độ. Nếu giá trị đưa vào nhỏ hơn -1 hoặc lớn hơn 1, hàm sẽ trả về NaN vì không tồn tại góc thực có cosin nằm ngoài khoảng này.
Chuyển kết quả Math.acos() từ radian sang độ
Vì Math.acos() luôn trả về radian, cần nhân kết quả với 180 / Math.PI nếu muốn hiển thị góc theo độ. Cách chuyển đổi này phù hợp khi kết quả được dùng trong giao diện hoặc các phép tính mà người dùng quen thuộc với đơn vị độ.
const cosValue = 0.5;
const radians = Math.acos(cosValue);
const degrees = radians * 180 / Math.PI;
console.log(degrees);
Với cosValue = 0.5, biến degrees nhận giá trị gần 60. Khi cần làm tròn để hiển thị, có thể kết hợp thêm các phương thức xử lý số phù hợp.
Tính góc giữa hai vector bằng Math.acos()
Trong hình học và lập trình đồ họa, góc giữa hai vector có thể được xác định từ tích vô hướng theo công thức: cos(θ) = (A · B) / (|A| × |B|). Sau khi tính được giá trị cosin, Math.acos() có thể chuyển giá trị đó thành góc.
const ax = 1;
const ay = 0;
const bx = 0;
const by = 1;
const dotProduct = ax * bx + ay * by;
const lengthA = Math.sqrt(ax ** 2 + ay ** 2);
const lengthB = Math.sqrt(bx ** 2 + by ** 2);
const cosValue = dotProduct / (lengthA * lengthB);
const angle = Math.acos(cosValue);
const degrees = angle * 180 / Math.PI;
console.log(degrees);
Trong ví dụ trên, hai vector vuông góc nên góc thu được là 90 độ. Khi áp dụng vào dữ liệu thực tế, nên bảo đảm hai vector có độ dài khác 0 và kiểm soát giá trị cosin để tránh sai số số thực khiến kết quả vượt nhẹ khỏi khoảng -1 đến 1.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Phương thức tĩnh Math.acos() trong JavaScript.
- 0 Bình luận
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *