I have enter invalid data such as "09/31/2016 10:10 AM"

but actually we dont have any 31th in september 2016, What date.parse() is doing that its calculating the next date "Oct 01, 2016 @ 10:10 AM" as output.

```js
angular.module("myModule", [])
       .controller("myController", ['$scope', function ($scope) {

           $scope.dDate = "09/31/2016 10:10 AM";

           $scope.format = function () {
               $scope.display = Date.parse($scope.dDate);
           }
           $scope.format(); // invoke the format()
       }]);
```

```html
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="myModule" >
    <div ng-controller="myController" ng-form="frm">
        <input type="text" name="name" style="width:250px;" ng-model="dDate" ng-change="format()" placeholder="MM/dd/YYYY hh:mm AM/PM" ng-pattern="/^(0[1-9]|1[012])[/]([123]0|[012][1-9]|31)[/](19[0-9]{2}|2[0-9]{3}) ([01][0-9]|2[0-3]):([0-5][0-9]) (AM|PM|am|pm)$/" />
        <div ng-show="!frm.name.$error.pattern">
            {{display | date : 'MMM dd, yyyy @ hh:mm a'}}
        </div>
        <div>Error : {{frm.name.$error}}</div>
    </div>
</body>
```

have I done anything wrong?