Ответ 1
$scope.itemarray.length = 0;
< это верно. Длина - свойство чтения-записи.
$scope.itemarray = [];
< это создает новый пустой массив. Если у вас есть привязки к old itemarray, они могут быть потеряны. (Привязка Html как ng-if="itemarray[0]"
не будет потеряна)