Hàm valueOf() trong JavaScript
Trần Thị Vân
- 951
- 29/08/2025
Chức năng của Hàm valueOf() trong JavaScript
Hàm valueOf() trong JavaScript dùng để trả một mảng về một chuỗi nối nhau bằng dấu phẩy, trả đối tượng chuỗi, số về giá trị nguyên thủy của nó, trả đối tượng ngày về giá trị số đại diện cho ngày và giờ.
Cú pháp của Hàm valueOf() trong JavaScript
doituong.valueOf();
doituong: Đối tượng là mảng, chuỗi, số, ngày,.....
Code Hàm valueOf() trong JavaScript
<script>
// Trả đối tượng chuỗi về giá trị nguyên thủy
document.write("<b>Trả đối tượng chuỗi về giá trị nguyên thủy</b><br>");
var dtchuoi = new String("Web Mới");
document.write(dtchuoi.valueOf()+"<br>"); // Kết quả: Web Mới
// Trả đối tượng số về giá trị nguyên thủy
document.write("<b>Trả đối tượng số về giá trị nguyên thủy</b><br>");
var dtso = new Number(35);
document.write(dtso.valueOf()+"<br>"); // Kết quả: 35
// Trả một mảng về một chuỗi nối nhau bằng dấu phẩy
document.write("<b>Trả đối tượng số về giá trị nguyên thủy</b><br>");
var mang = new Array(35,29,30);
document.write(mang.valueOf()+"<br>"); // Kết quả: 35,29,30
// Trả đối tượng ngày về giá trị số đại diện cho ngày và giờ
document.write("<b>Trả đối tượng ngày về giá trị số đại diện cho ngày và giờ</b><br>");
var dtngay = new Date("2025-08-29");
document.write(dtngay.valueOf()); // Kết quả: 1756425600000
</script>
Kết quả:
Trả đối tượng chuỗi về giá trị nguyên thủy
Web Mới
Trả đối tượng số về giá trị nguyên thủy
35
Trả đối tượng số về giá trị nguyên thủy
35,29,30
Trả đối tượng ngày về giá trị số đại diện cho ngày và giờ
1756425600000
Khi nào nên sử dụng Hàm valueOf() trong JavaScript?
valueOf() phù hợp khi cần lấy giá trị nguyên thủy mà một đối tượng JavaScript đại diện. Trong thực tế, phương thức này thường được sử dụng gián tiếp khi JavaScript thực hiện các phép toán hoặc chuyển đổi kiểu dữ liệu.
Sử dụng valueOf() để lấy giá trị nguyên thủy của đối tượng
Với các đối tượng tích hợp sẵn như Number, String hoặc Date, valueOf() có thể trả về giá trị nguyên thủy tương ứng. Điều này giúp lấy phần giá trị bên trong đối tượng thay vì làm việc trực tiếp với object.
const number = new Number(25);
console.log(number.valueOf()); // 25
Trong ví dụ trên, biến number là một đối tượng Number, còn kết quả của valueOf() là giá trị nguyên thủy 25. Cách sử dụng này đặc biệt hữu ích khi cần kiểm tra hoặc xử lý giá trị thực sự được đối tượng đại diện.
Phân biệt valueOf() và toString() trong JavaScript
Hai phương thức đều có thể tham gia vào quá trình chuyển đổi đối tượng, nhưng mục đích chính khác nhau. valueOf() hướng đến việc trả về giá trị nguyên thủy, trong khi toString() thường được dùng để tạo biểu diễn dạng chuỗi.
const number = new Number(100);
console.log(number.valueOf()); // 100
console.log(number.toString()); // "100"
Vì vậy, khi cần lấy giá trị để tiếp tục thực hiện phép tính hoặc xử lý theo kiểu dữ liệu nguyên thủy, valueOf() thường là lựa chọn phù hợp. Nếu mục tiêu là tạo nội dung dạng văn bản, toString() sẽ rõ ràng hơn.
Những lưu ý khi sử dụng valueOf() trong JavaScript
- valueOf() không phải công cụ chuyển mọi object thành một giá trị nguyên thủy theo cùng một cách. Kết quả phụ thuộc vào kiểu đối tượng và cách phương thức được định nghĩa.
- Không nên gọi valueOf() một cách máy móc khi JavaScript đã tự thực hiện chuyển đổi kiểu trong biểu thức.
- Khi làm việc với object tự tạo, có thể ghi đè valueOf() để quy định giá trị nguyên thủy mà đối tượng trả về.
- Cần phân biệt rõ mục đích giữa valueOf() và toString() để tránh tạo ra kết quả không đúng kiểu dữ liệu mong muốn.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Hàm valueOf() 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 *