0:00:01.333,0:00:03.803 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ề 0:00:03.803,0:00:07.469 Winston, nhưng không quá nhiều vì Winston muốn mình 0:00:07.469,0:00:11.870 bí ẩn một chút. Đấy là Winston nói thế. Vậy ta cùng xem 0:00:11.870,0:00:15.334 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ữ 0:00:15.334,0:00:20.034 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 0:00:20.034,0:00:23.955 một chuỗi – mắt – biến thứ ba chứa một mảng chuỗi, 0:00:23.955,0:00:27.907 đó là những sở thích của cậu ấy, và hai biến cuối cùng chứa 0:00:27.907,0:00:31.566 các chuỗi về quê hương của cậu. Sau đó 0:00:31.566,0:00:35.940 ở 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. 0:00:35.940,0:00:39.699 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 0:00:39.699,0:00:43.450 bằng ký hiệu ngoặc. Được rồi. Bây giờ, 0:00:43.450,0:00:48.636 toàn bộ 5 biến này đang mô tả những thông tin về cùng một người: Winston. 0:00:48.636,0:00:51.598 Nhưng các biến không biết điều đó. 0:00:51.598,0:00:55.502 Các bạn biết đấy, trong Javascript, khi muốn 0:00:55.502,0:00:59.289 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, 0:00:59.289,0:01:03.125 thú vị hơn, ta gọi đó là đối tượng. 0:01:03.125,0:01:06.795 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 0:01:06.795,0:01:11.623 lưu trữ tất cả những thông tin trên, thật kỳ diệu. 0:01:11.623,0:01:15.169 Ta cùng thử với thông tin của Winston nhé. Đầu tiên, ta khai biến 0:01:15.169,0:01:18.837 và gọi nó là Winston. Sau đó 0:01:18.837,0:01:23.399 ta mở ngoặc nhọn – hãy đảm bảo đó là ngoặc nhọn, không phải ngoặc vuông – 0:01:23.399,0:01:27.107 và một dấu chấm phẩy. Vậy là ta đã tạo xong một đối tượng 0:01:27.107,0:01:31.047 nhưng vẫn chưa có thông tin nào bên trong cả. 0:01:31.909,0:01:35.668 Như vậy, muốn thêm thông tin, ta phải thêm thuộc tính. 0:01:35.668,0:01:41.276 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. 0:01:41.276,0:01:43.789 Được rồi. còn với mắt, ta sẽ thêm một 0:01:43.789,0:01:48.039 dấu phẩy, sau đó là eyes: “black”. Ổn rồi, 0:01:48.039,0:01:52.742 hiện tại Winston đã có 2 thuộc tính trong đối tượng. 0:01:52.742,0:01:55.607 Về sở thích, ta có thể nhập likes: và sau đó 0:01:55.607,0:02:00.076 chỉ việc copy paste ở trên đây xuống... và 0:02:00.076,0:02:04.000 quá đẹp. Ta cùng quan sát nhé. Winston có 3 thuộc tính. 0:02:04.000,0:02:07.527 Mỗi thuộc tính là một chìa khóa, nằm ở phía tay phải, 0:02:07.527,0:02:12.796 và một giá trị, nằm ở phía tay trái. 0:02:12.796,0:02:15.632 Đối với chìa khóa, ta nên tuân theo các quy tắc tương tự như 0:02:15.632,0:02:20.099 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ế. 0:02:20.591,0:02:22.960 Đối với giá trị, nó có thể là bất cứ loại giá trị nào 0:02:22.960,0:02:27.124 ta đã từng gặp. Có thể là số, có thể là chuỗi, có thể là mảng. 0:02:27.124,0:02:33.373 Thậm chí nó có thể là boolean, vì vậy hiển nhiên ta có thể thêm isCool: true. 0:02:34.126,0:02:38.398 Trên thực tế, giá trị còn có thể là một đối tượng khác nữa. Ta có 0:02:38.398,0:02:42.709 BirthCity và BirthState. Đó hoàn toàn là những mẩu thông tin về cùng một thứ, 0:02:42.709,0:02:46.616 đó là một địa điểm. Tôi nghĩ sẽ hợp lý hơn 0:02:46.616,0:02:51.042 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, 0:02:51.042,0:02:54.836 còn với giá trị tôi lại mở ngoặc nhọn 0:02:54.836,0:02:58.376 và nhập chìa khóa cho thành phố. 0:02:58.376,0:03:02.287 “Mountain View”, sau đó đến bang, 0:03:02.287,0:03:06.766 “California”. Tuyệt vời! Bây giờ các bạn có thể thấy, thực sự ta có thể 0:03:06.766,0:03:10.480 lưu trữ rất nhiều thông tin bên trong một đối tượng. 0:03:11.033,0:03:15.459 Được rồi. Sau khi có được đối tượng đẹp đẽ này với toàn bộ thông tin về Winston, 0:03:15.459,0:03:18.783 ta thử xóa những biến riêng lẻ 0:03:18.783,0:03:23.066 không liên quan gì đến nhau nhé. Được rồi. 0:03:23.066,0:03:27.039 Uh oh! Chúng ta có một lỗi. Đó là bởi 0:03:27.039,0:03:30.739 các lệnh text đang tham chiếu biến cũ. Ta phải cập nhật chúng 0:03:30.739,0:03:34.502 để sử dụng thông tin thay thế từ đối tượng. 0:03:34.502,0:03:38.218 Trước hết ta phải chú thích lại ba biến cuối cùng để có thể 0:03:38.218,0:03:41.872 thực hiện từng cái một. Được rồi. Hiện tại 0:03:41.872,0:03:46.396 ta đang nhìn thấy WinstonAge. Cái ta cần làm là thay thế nó, ta sẽ nhập 0:03:46.396,0:03:50.293 winston, vì đó là tên biến. Hãy chú ý nếu ta 0:03:50.293,0:03:53.834 để nguyên như vậy, nó sẽ thông báo object object. Ghê lắm. 0:03:53.834,0:03:57.369 Javascript thông báo ta đang cố gắng biến nguyên 0:03:57.369,0:04:02.109 một đối tượng thành một giá trị chuỗi. Nhưng thay vào đó, ta chỉ muốn 0:04:02.109,0:04:06.134 tiếp cận age trong đó thôi. Vì vậy ta sẽ đưa 0:04:06.134,0:04:11.063 một dấu chấm, sau đó nhập khóa thuộc tính, đó là “age”. 0:04:11.063,0:04:14.897 Tada! Ta đã có age. Ta gọi đó là “ký hiệu chấm”, 0:04:14.897,0:04:18.284 đây là vị trí ta nhập tên biến cho đối tượng, theo sau là một dấu chấm, 0:04:18.284,0:04:21.791 và khóa thuộc tính. Được rồi, bây giờ 0:04:21.791,0:04:26.244 ta có thể tiếp tục rồi. Ta sẽ xóa chú thích này đi, và thay vì Winston 0:04:26.244,0:04:29.877 eyes, ta sẽ nhập winston.eyes, còn với 0:04:29.877,0:04:34.074 cái này, ta nhập winston.likes. 0:04:34.074,0:04:37.741 kế đến là winston.likes[1], 0:04:37.741,0:04:42.501 cuối cùng, nó hơi phức tạp hơn một chút vì 0:04:42.501,0:04:45.451 đó là đối tượng bên trong đối tượng. Ta sẽ nhập 0:04:45.451,0:04:48.784 winston, rồi chấm, birthplace, 0:04:48.784,0:04:53.288 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, 0:04:53.288,0:04:57.455 city. Được rồi, ở đây ta nhập... winston, 0:04:57.455,0:05:01.572 chấm, birthplace, chấm, state. 0:05:01.572,0:05:05.791 Tada! Thật thú vị vì ta có thể tiếp cận những thông tin 0:05:05.791,0:05:09.416 bên trong đối tượng. 0:05:10.863,0:05:13.919 Tuyệt vời. Như các bạn có thể thấy, 0:05:13.919,0:05:17.597 đố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 0:05:17.597,0:05:21.406 liên quan đến nhau về một đối tượng nào đó, và có thể tiếp cận sau đó. 0:05:21.406,0:00:00.000 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!