Truy cập bằng ký hiệu dấu chấm
Thuộc phần Nền tảng cơ bản trong hành trình Lua của Coddy. Bài học 67 trên 90.
Lua cung cấp một cách thay thế tiện lợi hơn gọi là ký hiệu dấu chấm (dot notation). Đây là cách truy cập giá trị gọn gàng và dễ đọc hơn khi các khóa của bạn là những chuỗi đơn giản.
Thay vì viết player["score"], bạn chỉ cần viết player.score:
local player = {
["name"] = "Alex",
["score"] = 1500,
["level"] = 8
}
print(player.name) -- in ra: Alex
print(player.score) -- in ra: 1500Cách viết bằng dấu chấm là điều mà lập trình viên gọi là “cú pháp đường” (syntactic sugar), tức là cách viết dễ chịu hơn cho cùng một điều. Tuy nhiên, cách viết này chỉ hoạt động khi khóa của bạn là một định danh Lua hợp lệ, nghĩa là chỉ chứa chữ cái, chữ số và dấu gạch dưới, đồng thời không bắt đầu bằng chữ số.
local book = {
["title"] = "Lua Programming",
["pages"] = 300
}
local bookTitle = book.title
print(bookTitle) -- in ra: Lua ProgrammingThử thách
DễTạo một hệ thống quản lý thư viện để minh họa cách truy cập thông tin sách bằng cú pháp dấu chấm. Trước tiên, tạo một bảng có tên book với các cặp khóa và giá trị sau: gán chuỗi ["title"] giá trị "The Lua Guide", gán chuỗi ["author"] giá trị "Roberto Ierusalimschy", gán số ["pages"] giá trị 328 và gán số ["year"] giá trị 2016. Sau khi tạo bảng, dùng cú pháp dấu chấm để truy cập và in ra tiêu đề sách.
Tự làm thử
-- TODO: Tạo bảng book với các cặp khóa và giá trị cần thiết
-- TODO: Dùng ký pháp dấu chấm để truy cập và in ra title của bookBài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Nền tảng cơ bản
4Toán tử 2: quan hệ và logic
Toán tử bằngToán tử quan hệToán tử andToán tử orToán tử notĐánh giá ngắn mạchGiá trị truthy và falsyÔn tập: logic đơn giản10Bảng phần 1: kiểu danh sách
Bảng là gì?Tạo bảngTruy cập phần tử theo chỉ sốSửa đổi phần tử theo chỉ sốToán tử độ dài '#'table.insert()table.remove()Ôn tập: quản lý thành viên nhóm13Dự án: Cửa hàng thuốc đơn giản
Thiết lập dự ánThêm một loại thuốc2Biến và kiểu dữ liệu
Biến là gì?Các sốChuỗiGiá trị BooleanGiá trị 'nil'Hàm type()Quy ước đặt tênÔn tập: hồ sơ nhân vật5Đầu ra cơ bản
In các giá trị cố địnhIn biếnIn nhiều giá trịKết hợp chuỗi và biếnHàm tostring()Đầu vàoÉp kiểuÔn tập: Báo cáo trạng tháiÔn tập: Đến 1208Cơ bản về thao tác với chuỗi
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Ôn tập: định dạng tên người dùng11Bảng 2: kiểu từ điển
Cặp khóa-giá trịTạo bảng kiểu từ điểnTruy cập bằng ký hiệu ngoặc vuôngTruy cập bằng ký hiệu dấu chấmThêm và sửa đổi các cặpXóa các cặp bằng nilÔn tập: thuộc tính của phần tử3Toán tử 1: số học và nối chuỗi
Toán tử số họcToán tử chia lấy dưToán tử lũy thừaNối chuỗiThứ tự ưu tiên của toán tửÔn tập: phép tính đơn giản6Dự án: Hiển thị chỉ số nhân vật
Lời chào mừngKhai báo chỉ số nhân vật9Cơ bản về hàm
Khai báo hàmGọi hàmHàm có tham sốHàm có nhiều tham sốCâu lệnh returnÔn tập: Máy tính diện tíchTự luyện tập: Trình biên dịch Lua online