Trong ngôn ngữ cũ, để xóa mục nhập bằng khóa ktừ bản đồ được đại diện bởi m, người ta đã viết câu lệnh,
m[k] = value, false
Cú pháp này là một trường hợp đặc biệt, nhiệm vụ hai chỉ một. Nó yêu cầu chuyển một giá trị (thường bị bỏ qua) được đánh giá nhưng bị loại bỏ, cộng với một giá trị boolean gần như luôn luôn là sai. Nó đã làm công việc nhưng kỳ quặc và một điểm gây tranh cãi.
Trong Go 1, cú pháp đó đã biến mất; thay vào đó là một chức năng tích hợp mới , delete. Cuộc gọi
delete(m, k)
sẽ xóa mục nhập bản đồ được lấy bởi biểu thức m[k]. Không có giá trị quay lại. Xóa một mục không tồn tại là không có.
Cập nhật: Chạy go fixsẽ chuyển đổi các biểu thức của biểu mẫu m[k] = value, falsethành delete(m, k)khi rõ ràng rằng giá trị bị bỏ qua có thể được loại bỏ một cách an toàn khỏi chương trình và falsetham chiếu đến hằng số boolean được xác định trước. Công cụ sửa lỗi sẽ đánh dấu các cách sử dụng cú pháp khác để lập trình viên kiểm tra.
sessions["moo"] = sessions["moo"], false;(hoặc điều đó có sai không?)