Truy cập các chữ số của số trong JavaScript
Bây giờ giả sử trong biến chúng ta lưu trữ
không phải là số trong dấu ngoặc kép, mà chỉ là một số. Trong trường hợp này,
nỗ lực truy cập vào một ký tự riêng lẻ của nó
sẽ trả về undefined, vì
cách truy cập như vậy chỉ hoạt động với chuỗi:
let test = 12345;
alert(test[0]); // sẽ trả về undefined
Để giải quyết vấn đề, chúng ta chuyển đổi số của mình thành chuỗi:
let test = String(12345); // chuỗi
alert(test[0]); // sẽ hiển thị '1' - mọi thứ hoạt động
Bây giờ giả sử chúng ta muốn tìm tổng của hai chữ số đầu tiên:
let test = String(12345); // chuỗi
alert(test[0] + test[1]); // sẽ hiển thị '12' - cộng như chuỗi
Hãy thêm hàm Number để
các ký tự được cộng như số:
let test = String(12345); // chuỗi
alert(Number(test[0]) + Number(test[1])); // sẽ hiển thị 3
Tôi nhắc lại rằng vấn đề loại này sẽ chỉ phát sinh khi thực hiện phép cộng. Trong phép nhân, chẳng hạn, việc chuyển đổi sang số có thể không cần thực hiện:
let test = String(12345); // chuỗi
alert(test[1] * test[2]); // sẽ hiển thị 6
Cho số 12345. Tìm tổng các chữ số
của số này.
Cho số 12345. Tìm tích
các chữ số của số này.
Cho số 12345. Sắp xếp các chữ số
của số này theo thứ tự ngược lại.