title: TypeError: Cannot read property 'push' of undefined, JavaScript
body: <p>I'm working in this Angular project where user submits a comment form, and the new comment is added to the comments that's already posted. Here is my code. </p>
  
  <pre><code>.controller('productCtrl', function($scope, $http, $routeParams, Page){
  $scope.product = {};
  $scope.review = {};
  $scope.comments = {};
  
  routeparm = $routeParams.param;
  
  $scope.review = function(){
      var review_box = $scope.review_form.review_box;
  
      $http.post('./comment.php', {
          comment : review_box,
          code: routeparm
      })
  
      .success(function(data){
              $scope.comments.push(data.comments);
              $scope.review.review_box = '';
      })
  
      .error(function(data){
          $scope.has_error = true;
          $scope.error_message = data;
      })
  
  };
  </code></pre>
  
  <p>However when I try to add a comment I get the following error. </p>
  
  <pre><code>TypeError: Cannot read property 'push' of undefined
  </code></pre>
  
  <p>I've defined an empty $scope.comments = {}; so why am I getting this error? And how can I fix it? Thanks</p>