游乐游手机版
首页/前端开发/文章详情

Angular获取当前日期的实现方法

时间:2026-06-17 06:46
在Angular中,使用newDate()获取当前日期,通过导入DatePipe并调用其transform方法,可将默认日期格式转换为dd MM YYYY等自定义格式。示例在组件中定义日期变量和格式转换函数,点击按钮触发转换并显示结果。整个过程简洁明了,便于开发者快速实现日期格式化功能。

Angular 获取当前日期的完整实现与日期格式转换

在 Angular 应用开发中,日期处理是不可或缺的基础功能——无论是记录日志、标记操作时间,还是按日期筛选数据,都会频繁用到。日常看到的日期通常由年、月、日等基本要素组合而成。下面通过一个具体实例,演示如何在 Angular 中快速获取当前日期,并根据需求自定义格式。

首先,创建一个新的 Angular 项目:

# angular
$ ng new my-app

接着进入项目目录:

# angular
$ cd my-app

启动开发服务器,确认环境正常运行:

# angular
$ ng serve --open

接下来,在 app.component.ts 中直接使用 date() 方法获取当前日期——实际上是通过 new Date() 来实现:

# Angular
today = new Date();

这一行代码即可获取系统当前的完整日期时间,输出结果类似如下:

但默认的日期格式往往不符合实际需求。例如,希望显示为 dd/MM/YYYY 这种更通用的形式,就需要借助 Angular 内置的 DatePipe 来进行格式化转换。

先定义一个名为 changeFormat 的函数,专门负责日期格式处理。这样做的好处是,如果后期需要统一调整格式,只需修改这一处即可。接着在 app.component.ts 中导入 DatePipe

# Angular
import { DatePipe } from '@angular/common';

然后声明一个新变量 changedDate,用于保存转换后的日期字符串。函数 changeFormat() 接收参数 today,内部使用 DatePipetransform 方法将日期转换为指定格式。此外还需要定义一个管道变量来存储时区信息:

# Angular
import { Component, VERSION } from '@angular/core';
import { DatePipe } from '@angular/common';
@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css'],
})
export class AppComponent {
  name = 'Angular ';
  today = new Date();
  changedDate = '';
  pipe = new DatePipe('en-US');
  changeFormat(today){
    let ChangedFormat = this.pipe.transform(this.today, 'dd/MM/YYYY');
    this.changedDate = ChangedFormat;
    console.log(this.changedDate);
  }
}

在模板中添加一个按钮,点击后触发 changeFormat(),同时将原始日期和格式化后的日期都显示出来:

# Angular

Today is {{ today }}

Today is {{ this.changedDate }}

实现效果如下:

使用angular的日期管道更改日期格式

初始显示的是类似 “Tue Apr 05 2022 17:16:06 GMT+0500 (Pakistan Standard Time)” 这种冗长的完整格式。点击 “Change Date” 按钮后,会调用 changeFormat(),输出变为 05/04/2022 这样更简洁易读的格式。

至此,在 Angular 中获取当前日期并自定义显示格式的操作就完成了。核心原理就是利用 new Date() 配合 DatePipetransform 方法,既简单又灵活,能轻松适配各种日期展示场景。

来源:https://www.jb51.net/javascript/284863mih.htm
上一篇Angular路由常用类详解 下一篇从源码角度深入解析Angular @Injectable注解的核心工作原理
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
Vue应用中异步更新性能问题的优化策略详解
前端开发 · 2026-07-03

Vue应用中异步更新性能问题的优化策略详解

先来看一个令许多开发者感到困惑的场景:明明修改了数据,DOM 却“毫无反应”,无法获取最新的高度,也无法计算正确的坐标。这并非 Vue 的缺陷,反而是它精心设计的性能优化策略。核心在于——你需要学会与它“异步更新”的特性协作,而非硬碰硬。 所谓的“异步更新性能问题”,本质上是一种认知偏差。Vue 的

如何避免原型对象挂载大体积动态数组内存污染
前端开发 · 2026-07-03

如何避免原型对象挂载大体积动态数组内存污染

原型链上的大数组:一个隐蔽的内存冲击波 先给个核心判断:直接在原型对象上挂载一个大体积动态数组,这既不是传统意义上的内存“污染”,也不是安全漏洞那种“污染”,而是一种相当隐蔽但后果严重的内存管理失当。它会导致所有实例共享同一份数据,而且正因为生命周期跟整个原型链绑定得太紧,垃圾回收器(GC)根本看不

利用堆栈信息精准定位显式绑定错误对象致未定义异常
前端开发 · 2026-07-03

利用堆栈信息精准定位显式绑定错误对象致未定义异常

深入追踪:显式绑定传错对象引发的未定义异常 说实话,这类问题在JavaScript开发中相当常见——显式绑定传错了对象,然后方法执行时静默失败、访问undefined、或者抛出TypeError。但真正的难点不在于“报了什么错”,而在于“到底是哪个对象被绑错了”。要解决它,需要跳出堆栈的表层报错信息

ES模块中默认导出和具名导出的执行上下文
前端开发 · 2026-07-03

ES模块中默认导出和具名导出的执行上下文

export default 与具名导出在 ES Module 中的行为机制截然不同,核心差异不在于“值如何传递”,而在于绑定如何建立以及导入时如何使用。先给出总结性结论,再逐一详细拆解。 export default 是一种语法糖,而非真正的变量声明 这种设计容易引起误解。实际上,export d

详解HTML中iframe标签loading=lazy属性实现嵌入内容懒加载方法
前端开发 · 2026-07-03

详解HTML中iframe标签loading=lazy属性实现嵌入内容懒加载方法

先聊聊 loading= "lazy " 这个属性——它本意是让 iframe 实现延迟加载,但实际落地时常常“失效”。这并非程序漏洞,而是浏览器内置的防御机制:只有所有条件同时触发,它才会真正推迟资源请求。比如 src 必须是跨域地址(类似 https: widget example com emb