Object.observe() appends the callback to [[ObserverCallbacks]] .
On the other hand, Object.unobserve() does not care about [[ObserverCallbacks]] .
Then [[ObserverCallbacks]] continues growing big with unused callback while the system runs.
I implemented current specification straight forward, then I encountered this problem.
I think Object.unobserve() should remove it.
Or, somewhere in delivering steps (the end of AllChangeRecords ?) might be better point.
because records in [[PendingChangeRecords]] could remain if Object.unobserve() immediately removes.
Object.observe()appends the callback to[[ObserverCallbacks]].On the other hand,
Object.unobserve()does not care about[[ObserverCallbacks]].Then
[[ObserverCallbacks]]continues growing big with unused callback while the system runs.I implemented current specification straight forward, then I encountered this problem.
I think
Object.unobserve()should remove it.Or, somewhere in delivering steps (the end of AllChangeRecords ?) might be better point.
because records in
[[PendingChangeRecords]]could remain ifObject.unobserve()immediately removes.