vue3 readonly和shallowReadonly函数

vue3中提供了只读相关的函数:readonlyshallowReadonlyisReadonly

三者用途和区别显而易见:
readonly:用于创建一个只读数据,并且是深度只读或者叫递归只读
shallowReadonly:也是用于创建一个只读数据,但是这个只读只是第一层只读,非深度只读
isReadonly:判断一个数据是不是只读数据

我们知道const定义的变量也是不能改的,那readonly和const有什么区别?

  1. const是赋值保护,使用const定义的变量,该变量不能重新赋值。但如果const赋值的是对象,那么对象里面的东西是可以改的。原因是const定义的变量不能改说的是,对象对应的那个地址不能改变
  2. 而readonly是属性保护,不能给属性重新赋值

You may also like...