Go 1.22 语义的 for 循环
作者: atombrella创建于 2026年3月9日更新于 2026年3月11日
describe("存储和检索书籍数据", func() {
for _, book := range fixtureBooks {
book := book
It(fmt.Sprintf("可以存储和检索 %s", book.Title), func() {
Expect(library.Store(book)).To(Succeed())
DeferCleanup(library.Delete, book)
Expect(library.FindByTitle(book.Title)).To(Equal(book))
})
}
})
在 for 循环的 1.22 语义发生变化 后, 是否真的需要重新声明 book 变量? Modernize 有一个 规则, 它会自动删除这些变量。
内容来源: onsi/ginkgo