相同点:
1. 都是用来标识常量
不同点:
1. 初始化的方式不同
- const必须在声明的同时进行赋值
- readonly可以在声明或构造函数中进行赋值,其他地方不能赋值操作
- readonly是实例成员,不同的实例可以有不同的值
初始化
2. const是编译是常数,readonly是运行时常数
- const必须编译的时候就可以确定其具体的值,且修改后所有引用到的地方都必须重新编译
- readonly可以等到运行时再确定其值,从而灵活度更大
3. const默认就是静态的,readonly如果要声明为静态必须显示声明
4. 应用类型只有string和值为null的引用类型才能够声明为const,而readonly可以为任意类型