@@ -318,7 +318,7 @@ var GET_TIME_ZONE = /[A-Z]{3}(?![+\-])/,
318318 * @param {(Date|number|string) } date Date to format either as Date object, milliseconds (string or
319319 * number) or ISO 8601 extended datetime string (yyyy-MM-ddTHH:mm:ss.SSSZ).
320320 * @param {string= } format Formatting rules (see Description). If not specified,
321- * Date#toLocaleDateString is used.
321+ * `fullDate` is used.
322322 * @returns {string } Formatted string or the input if input is not recognized as date/millis.
323323 *
324324 * @example
@@ -344,7 +344,12 @@ var GET_TIME_ZONE = /[A-Z]{3}(?![+\-])/,
344344 </doc:example>
345345 */
346346angularFilter . date = function ( date , format ) {
347- var $locale = this . $service ( '$locale' ) ;
347+ var $locale = this . $service ( '$locale' ) ,
348+ text = '' ,
349+ parts = [ ] ,
350+ fn , match ;
351+
352+ format = format || 'fullDate'
348353 format = $locale . DATETIME_FORMATS [ format ] || format ;
349354 if ( isString ( date ) ) {
350355 if ( NUMBER_STRING . test ( date ) ) {
@@ -362,26 +367,23 @@ angularFilter.date = function(date, format) {
362367 return date ;
363368 }
364369
365- var text = date . toLocaleDateString ( ) , fn ;
366- if ( format && isString ( format ) ) {
367- text = '' ;
368- var parts = [ ] , match ;
369- while ( format ) {
370- match = DATE_FORMATS_SPLIT . exec ( format ) ;
371- if ( match ) {
372- parts = concat ( parts , match , 1 ) ;
373- format = parts . pop ( ) ;
374- } else {
375- parts . push ( format ) ;
376- format = null ;
377- }
370+ while ( format ) {
371+ match = DATE_FORMATS_SPLIT . exec ( format ) ;
372+ if ( match ) {
373+ parts = concat ( parts , match , 1 ) ;
374+ format = parts . pop ( ) ;
375+ } else {
376+ parts . push ( format ) ;
377+ format = null ;
378378 }
379- forEach ( parts , function ( value ) {
380- fn = DATE_FORMATS [ value ] ;
381- text += fn ? fn ( date , $locale . DATETIME_FORMATS )
382- : value . replace ( / ( ^ ' | ' $ ) / g, '' ) . replace ( / ' ' / g, "'" ) ;
383- } ) ;
384379 }
380+
381+ forEach ( parts , function ( value ) {
382+ fn = DATE_FORMATS [ value ] ;
383+ text += fn ? fn ( date , $locale . DATETIME_FORMATS )
384+ : value . replace ( / ( ^ ' | ' $ ) / g, '' ) . replace ( / ' ' / g, "'" ) ;
385+ } ) ;
386+
385387 return text ;
386388} ;
387389
0 commit comments