In Go, Constants Can Only Be A Few Primitive Types
type Person struct { FirstName string LastName string }
// Note- In Go you can't instatiate Types to a "const" variable. // Both of these result in compile errors: const p4 = new(Person) const p5 := new(Person)
// long form syntax var p2 = new(Person) p2.FirstName = "Cindy" p2.LastName = "Jacobs" // shortcut syntax var p6 := Person{"Matt", "O'Reiley"}
In JavaScript, The Only Rule With Constants Is They Can't Be Re-Assigned
interface IPerson { firstName: string; lastName: string; } class Person implements IPerson { constructor(public firstName: string = "First", public lastName: string = "Last") { } } const p : IPerson = new Person(); p.firstName = "123" p.firstName = "wombat" p.firstName = "DinkleWomp" console.log(p.firstName) // prints "DinkleWomp" const someArray = [1, 2, 3] someArray[0] = 42 someArray.push(4) console.log(someArray) // prints [ 42, 2, 3, 4 ]
type Person struct { Name string } func (p Person) Talk() { fmt.Println("Hi, my name is", p.Name) } func main() { person := Person{"Jimbo"} person.Talk() // prints "Hi, my name is Jimbo" }