I noticed that for any vectors $\mathbf{a},\mathbf{b},\mathbf{c}$ where $\mathbf{a},\mathbf{b}\in \mathbb{R}^{m\times 1}$ and $\mathbf{c}\in \mathbb{R}^{n\times 1}$, there exists the equality that

$$\mathbf{a}^\top \mathbf{b} \mathbf{c}=\mathbf{c}\mathbf{b}^\top \mathbf{a}$$

I can prove it as follows,

Denote the left side as vector $\mathbf{l}=\mathbf{a}^\top \mathbf{b} \mathbf{c}$ and the right side $\mathbf{r}=\mathbf{c}\mathbf{b}^\top \mathbf{a}$, then

$$l_j=\left(\sum_{i=1}^m{a_i b_i}\right)c_j$$

and

$$r_j=\sum_ {i=1}^m{c_j b_i a_i}$$

Since $l_j=r_j$, hence it is proved.

It's an element-based proof. I was wondering if there is any other method that can prove it very simply and if this equality is an existing property of vector operations?