Tôi đã viết một chương trình để cung cấp cho các bạn những thông tin lý thú về
Winston, nhưng không quá nhiều vì Winston muốn mình
bí ẩn một chút. Đấy là Winston nói thế. Vậy ta cùng xem
tôi đã viết chương trình như thế nào nhé. Tôi đã tạo một số biến ở trên cùng để lưu trữ
một số thông tin về cậu ấy. Biến đầu tiên chứa một số - tuổi – biến thứ hai chứa
một chuỗi – mắt – biến thứ ba chứa một mảng chuỗi,
đó là những sở thích của cậu ấy, và hai biến cuối cùng chứa
các chuỗi về quê hương của cậu. Sau đó
ở dưới này, tôi đã viết từng dòng bằng lệnh text và chỉ sử dụng tên biến.
Và tất nhiên đối với mảng, tôi phải tiếp cận từng phần tử trong mảng
bằng ký hiệu ngoặc. Được rồi. Bây giờ,
toàn bộ 5 biến này đang mô tả những thông tin về cùng một người: Winston.
Nhưng các biến không biết điều đó.
Các bạn biết đấy, trong Javascript, khi muốn
lưu trữ nhiều mẩu thông tin liên quan, ta còn có một phương pháp hiệu quả hơn,
thú vị hơn, ta gọi đó là đối tượng.
Nói cách khác, thay vì 5 biến, ta có thể chỉ sử dụng một biến duy nhất
lưu trữ tất cả những thông tin trên, thật kỳ diệu.
Ta cùng thử với thông tin của Winston nhé. Đầu tiên, ta khai biến
và gọi nó là Winston. Sau đó
ta mở ngoặc nhọn – hãy đảm bảo đó là ngoặc nhọn, không phải ngoặc vuông –
và một dấu chấm phẩy. Vậy là ta đã tạo xong một đối tượng
nhưng vẫn chưa có thông tin nào bên trong cả.
Như vậy, muốn thêm thông tin, ta phải thêm thuộc tính.
Mỗi thuộc tính là một chìa khóa và một giá trị. Ví dụ, tuổi sẽ là age: 19.
Được rồi. còn với mắt, ta sẽ thêm một
dấu phẩy, sau đó là eyes: “black”. Ổn rồi,
hiện tại Winston đã có 2 thuộc tính trong đối tượng.
Về sở thích, ta có thể nhập likes: và sau đó
chỉ việc copy paste ở trên đây xuống... và
quá đẹp. Ta cùng quan sát nhé. Winston có 3 thuộc tính.
Mỗi thuộc tính là một chìa khóa, nằm ở phía tay phải,
và một giá trị, nằm ở phía tay trái.
Đối với chìa khóa, ta nên tuân theo các quy tắc tương tự như
tên biến Javascript. Không dấu cách, bắt đầu với một chữ cái, đại loại thế.
Đối với giá trị, nó có thể là bất cứ loại giá trị nào
ta đã từng gặp. Có thể là số, có thể là chuỗi, có thể là mảng.
Thậm chí nó có thể là boolean, vì vậy hiển nhiên ta có thể thêm isCool: true.
Trên thực tế, giá trị còn có thể là một đối tượng khác nữa. Ta có
BirthCity và BirthState. Đó hoàn toàn là những mẩu thông tin về cùng một thứ,
đó là một địa điểm. Tôi nghĩ sẽ hợp lý hơn
nếu ta lưu trữ nó dưới dạng đối tượng. Tôi sẽ thêm một chìa khóa khác, nơi sinh,
còn với giá trị tôi lại mở ngoặc nhọn
và nhập chìa khóa cho thành phố.
“Mountain View”, sau đó đến bang,
“California”. Tuyệt vời! Bây giờ các bạn có thể thấy, thực sự ta có thể
lưu trữ rất nhiều thông tin bên trong một đối tượng.
Được rồi. Sau khi có được đối tượng đẹp đẽ này với toàn bộ thông tin về Winston,
ta thử xóa những biến riêng lẻ
không liên quan gì đến nhau nhé. Được rồi.
Uh oh! Chúng ta có một lỗi. Đó là bởi
các lệnh text đang tham chiếu biến cũ. Ta phải cập nhật chúng
để sử dụng thông tin thay thế từ đối tượng.
Trước hết ta phải chú thích lại ba biến cuối cùng để có thể
thực hiện từng cái một. Được rồi. Hiện tại
ta đang nhìn thấy WinstonAge. Cái ta cần làm là thay thế nó, ta sẽ nhập
winston, vì đó là tên biến. Hãy chú ý nếu ta
để nguyên như vậy, nó sẽ thông báo object object. Ghê lắm.
Javascript thông báo ta đang cố gắng biến nguyên
một đối tượng thành một giá trị chuỗi. Nhưng thay vào đó, ta chỉ muốn
tiếp cận age trong đó thôi. Vì vậy ta sẽ đưa
một dấu chấm, sau đó nhập khóa thuộc tính, đó là “age”.
Tada! Ta đã có age. Ta gọi đó là “ký hiệu chấm”,
đây là vị trí ta nhập tên biến cho đối tượng, theo sau là một dấu chấm,
và khóa thuộc tính. Được rồi, bây giờ
ta có thể tiếp tục rồi. Ta sẽ xóa chú thích này đi, và thay vì Winston
eyes, ta sẽ nhập winston.eyes, còn với
cái này, ta nhập winston.likes.
kế đến là winston.likes[1],
cuối cùng, nó hơi phức tạp hơn một chút vì
đó là đối tượng bên trong đối tượng. Ta sẽ nhập
winston, rồi chấm, birthplace,
nhưng nếu làm như vậy thì đó vẫn là một đối tượng, vì thế ta sẽ thêm chấm,
city. Được rồi, ở đây ta nhập... winston,
chấm, birthplace, chấm, state.
Tada! Thật thú vị vì ta có thể tiếp cận những thông tin
bên trong đối tượng.
Tuyệt vời. Như các bạn có thể thấy,
đối tượng là một phương pháp hiệu quả giúp lưu trữ nhiều mẩu thông tin
liên quan đến nhau về một đối tượng nào đó, và có thể tiếp cận sau đó.
Chỉ cần tiếp tục tìm hiểu, các bạn sẽ thấy đổi tượng tuyệt vời như thế nào!