Xóa các cặp bằng nil
Thuộc phần Nền tảng cơ bản trong hành trình Lua của Coddy. Bài học 69 trên 90.
Khi gán nil cho một khóa, Lua sẽ xóa cặp khóa-giá trị đó khỏi bảng:
local settings = {
["volume"] = 80,
["difficulty"] = "normal",
["music"] = true
}
-- Xóa cài đặt difficulty
settings.difficulty = nil
-- Giờ khóa difficulty không còn trong bảngBạn có thể dùng ký hiệu chấm hoặc ký hiệu ngoặc vuông để xóa một cặp khóa-giá trị. Cả settings.difficulty = nil và settings["difficulty"] = nil đều hoạt động giống hệt nhau.
Sau khi gán nil cho một khóa, khóa đó sẽ biến mất hoàn toàn khỏi bảng. Nếu bạn thử truy cập khóa đó sau này, kết quả sẽ là nil, như thể khóa đó chưa từng tồn tại.
Thử thách
DễTạo một hệ thống cấu hình trò chơi để minh họa cách xóa các thiết lập không cần thiết khỏi bảng dạng từ điển. Bắt đầu bằng cách tạo một bảng có tên gameConfig với các cặp khóa-giá trị sau: ["graphics"] được gán chuỗi "high", ["sound"] được gán số 75, ["difficulty"] được gán chuỗi "normal" và ["debug"] được gán giá trị boolean true.
Sau khi tạo bảng cấu hình ban đầu, hãy xóa thiết lập debug bằng cách gán nil cho nó bằng ký hiệu dấu chấm. Sau đó in ra thiết lập âm thanh còn lại để xác minh rằng bảng vẫn chứa các giá trị khác.
Tự làm thử
-- TODO: Viết code của bạn ở đây
-- Tạo bảng gameConfig với các cặp khóa-giá trị theo yêu cầu
-- Xóa thiết lập debug bằng ký pháp dấu chấm
-- In ra thiết lập soundBà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