Introduction
Sometimes Angular's automatic change detection does not catch all changes. ngDoCheck lets you check for changes yourself and react to them.
You want to detect changes in objects or arrays that Angular does not track by default.
You need to run custom logic when some data changes, but Angular's default checks miss it.
You want to optimize performance by controlling when and how change detection runs.
You have complex data structures and want to detect deep changes manually.