Go 语言中没有直接支持像 JavaScript 那样的对象字面量语法,但是可以使用结构体(struct)和map来模拟对象。下面是一个简单示例,使用结构体和map来创建一个类似于 JavaScript 对象:package main
import (
"fmt"
)
type Person struct {
Name string
Age int
SayHi func()
}
func main() {
p := &Person;{
Name: "John",
Age: 30,
SayHi: func() { fmt.Println("Hello, my name is", p.Name) },
}
p.SayHi()
}在上面的示例中,我们定义了一个结构体Person,它包含三个字段:Name、Age和SayHi。其中SayHi是一个函数类型,它将在对象创建时初始化为一个 lambda 函数。然后,我们创建了一个Person对象p,并将其 fields 初始化为指定的值。最后,我们调用p.SayHi()函数,输出结果将是 "Hello, my name is John"。如果你想要创建一个可以动态添加属性和方法的对象,可以使用 map 来实现:package
...
继续阅读
(128)