In AngularJS, $filter provides a way to format the data we display to the user.
However, $interpolate also allows us to live update a string
of text.
Are $interpolate and $filter related to each other? How are these two conceptually different?
You can think of $interpolate() as a specialized filter.
That will produce:
You can think of the return value of $interpolate(STRING) as a compiled template that you later render with a set of variables.
By contrast, $filter(NAME) returns a function that was previously registered as a filter with the name NAME. For example the "uppercase" filter converts its arguments to uppercase, the "number" filter formats numbers, the "date" filter formats Date objects and you can define your own named filters that do arbitrary things with its arguments.