
angular.module('average-app', [])

.factory('average', function() {
  return function average(values) {
    
    // Check if values is an array
    if ( Object.prototype.toString.apply(values) !== '[object Array]' ) {
      throw new Error('invalid parameter `values`');
    }
    
    // Check if it is empty
    var count = values.length;
    if ( count === 0 ) {
      return 0;
    }
    
    // Calculate average
    var sum = 0;
    for(var index=0; index < count; index++) {
      sum = sum + values[index];
    }
    return sum / count;
    
  };
});
@@ -62,16 +62,17 @@
 ion() %7B%0A
+%0A
   return
@@ -103,117 +103,42 @@
 ) %7B%0A
-    
 %0A    
-// Check if values is an array%0A    if ( Object.prototype.toString.apply(values) !== '%5Bobject Array%5D'
+if ( !angular.isArray(values)
  ) %7B
@@ -189,37 +189,33 @@
 alues%60');%0A    %7D%0A
-    
 %0A
+
     // Check if 
@@ -304,21 +304,17 @@
 ;%0A    %7D%0A
-    
 %0A
+
     // C
@@ -457,20 +457,16 @@
  count;%0A
-    
 %0A  %7D;%0A%7D)

use angular.isArray