In the following text, by the word dependencies I refer to variables that are reactive and are used inside a computed property. When a dependency is changed, the computed property is calculated.
Computed properties are not meant for memorizing data, but you can define a setter in case it makes more sense to set a value directly instead of indirectly manipulating it through its dependencies. Moreover, if a computed property returns an object, it will be a new object every time, not a modified version of the previous one. Lastly, the computed property will not be called if all the dependencies haven't changed.
This caching mechanism and defining a setter are analyzed in the following sections.