Trong bài viết này, chúng ta sẽ tìm hiểu cách chuyển đổi một số thập lục phân thành số thập phân tương đương trong JavaScript. Và chúng ta sẽ xem xét một số tình huống trong thế giới thực mà chúng ta sẽ cần thực hiện điều này
Đăng ký bản tin Coding Beauty
Có được những hiểu biết hữu ích và nâng cao kiến thức phát triển web của bạn với các mẹo và hướng dẫn hàng tuần từ Coding Beauty. Hơn 1.700 nhà phát triển đăng ký
chức năng console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
0
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
Để chuyển đổi một số thập lục phân thành số thập phân, hãy gọi hàm
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
0, truyền số thập lục phân và console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
2 tương ứng làm đối số thứ nhất và thứ hai, i. e. , console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
3. Ví dụfunction hexToDec[hex] {
return parseInt[hex, 16];
}
console.log[hexToDec['f']]; // 15
console.log[hexToDec['abc']]; // 2748
console.log[hexToDec[345]]; // 837
Hàm
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
0 phân tích cú pháp một chuỗi và trả về một số nguyên của cơ số đã chỉ định. Nó có hai tham số
5 – chuỗi cần phân tích cú phápconsole.log[parseInt[' a', 16]]; // 10 console.log[parseInt[' cd', 16]]; // 205
6 – một số nguyên từ 2 đến 36 đại diện cho cơ số/cơ số của chuỗiconsole.log[parseInt[' a', 16]]; // 10 console.log[parseInt[' cd', 16]]; // 205
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
0 bỏ qua bất kỳ khoảng trắng hàng đầu nào trong chuỗi được truyền cho nóconsole.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
Nếu chuỗi được truyền không phải là một số hợp lệ trong cơ số đã chỉ định, thì
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
0 sẽ không đưa ra lỗi mà trả về console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
9console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
2Nếu cơ số không nằm trong khoảng từ 2 đến 36, thì
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
0 cũng sẽ trả về console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
9console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
5Nếu cơ số là một số không hợp lệ hoặc không được đặt và chuỗi bắt đầu bằng
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
22 hoặc console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
23, thì cơ số được giả định là 16. Nhưng nếu chuỗi bắt đầu với bất kỳ giá trị nào khác, thì cơ số được coi là 10console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
8Trường hợp sử dụng. chuyển mã hex sang RGB[A]
Một cách sử dụng phổ biến để chuyển đổi giá trị hex thành số thập phân là chuyển đổi mã màu hex sang định dạng RGB tương đương. Đây là cách chúng ta có thể làm điều đó
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
9Chúng tôi đã tạo hàm
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
24 có thể tái sử dụng để chuyển đổi mã màu hex sang định dạng RGB tương đương của chúngChúng tôi sử dụng biểu thức chính quy để khớp và phân tách các mã gồm hai chữ cái đại diện cho màu đỏ [R], xanh lá cây [G] và xanh dương [B]. Chúng tôi gọi phương thức
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
25 để tìm các kết quả khớp của biểu thức chính quy này trong mã màu hex đã chỉ địnhconsole.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
2Sau khi tách chúng ra, chúng tôi sử dụng phương pháp
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
26 của mình để chuyển đổi từng cái thành số thập phân tương đươngChúng tôi trả về một đối tượng có các thuộc tính
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
27, console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
28 và console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
29 chứa các giá trị cho màu đỏ, xanh lá cây và xanh dương tương ứngTùy thuộc vào trường hợp sử dụng của chúng tôi, chúng tôi có thể trả về một chuỗi
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
50 thay vì một đối tượng. Điều này có thể hữu ích cho hoạt hình màu, vì một số thư viện hoạt hình hoạt động với các giá trị RGB nhưng không hoạt động với mã màu hexconsole.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
8Thay vào đó, chúng tôi có thể sửa đổi chức năng để phát hiện các giá trị alpha trong mã hex và chuyển đổi mã màu sang định dạng RGBA. Chúng tôi sẽ sử dụng alpha của
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
51 nếu nó không được chỉ địnhconsole.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
0Và chúng ta cũng có thể trả về một chuỗi
console.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
52 thay vì một đối tượngconsole.log[parseInt[' a', 16]]; // 10
console.log[parseInt[' cd', 16]]; // 205
2Mọi điều điên rồ mà JavaScript làm
Hướng dẫn hấp dẫn về những cảnh báo tinh tế và những phần ít được biết đến của JavaScript
Đăng ký và nhận ngay một bản sao miễn phí
Ayibatari Ibaba
Ayibatari Ibaba là nhà phát triển phần mềm có nhiều năm kinh nghiệm xây dựng trang web và ứng dụng. Anh ấy đã viết rất nhiều về nhiều chủ đề lập trình và đã tạo ra hàng chục ứng dụng và thư viện mã nguồn mở