I have this data:
[{\"id\":\"42\",\"firstname\":\"Sarah\",\"lastname\":\"Dilby\",\"age\":\"40\",\"cars\":\"Yaris\"},
{\"firstname\":\"Jason\",\"lastname\":\"
Let orderBy point to a method owned by the scope or its not isolated ancestors and let this method return a number casted from the string.
You may have to write a directive inheriting the person scope created by the ngRepeat instances.. to add this method.
Moreover in your case, the age is a string where it could have been an integer and so the numeric sort would be natively applied.
If you cannot change the data serverside then alter it clientside while fetching.