Что такое вообще AngularJS выражения, и чем они отличаются от выражений в JavaScript?
По сути это почти одно и то же, за исключением следующих деталей:
1. Последовательность действий не изменяется, т.к. в Ангуляре нельзя использовать условные операторы, циклические конструкции, исключения с их обработкой и тд
2. В Ангуляре можно передать результат вычисления выражений через цепочку фильтров.
3. В Ангуляре значения всех свойств и атрибутов вычисляются в области видимости в отличие от JS, где это всё происходит в глобальном окне
4. Вычисление выражений допустимо с неопределёнными и нулевыми значениями (в JavaScript подобные вычесления выдавали бы Exception)