|
阅读:10620回复:3
天啦,这个问题难倒我了!sql数据库中日期数据传入前台后格式发生变化
在一次项目中,sql数据库中存在一列关于日期的数据,格式为date格式:
CREATE TABLE userInformation( -- 信息表 user_id INT AUTO_INCREMENT NOT NULL PRIMARY KEY, -- id user_Name VARCHAR(20) NOT NULL, -- 姓名 user_sex INT, user_tel VARCHAR(20), user_email VARCHAR(20), user_birthday DATE, user_password INT )插入数据: INSERT INTO userInformation(user_name,user_sex,user_tel,user_email,user_birthday,user_password) VALUES
('张三',1,'18811111111','1@qq.com','1990-01-02',111111)服务器得到查询到的结果发回给前台,通过网页显示出来,此时显示出来的的样式为: 1990-01-01T16:00:00.000Z这是怎么回事?相信和我一样第一次遇到都会一头雾水吧。可是没事,谁叫我们是程序员呢,就算熬夜掉光头发都得把他搞明白。原因是sql的DATE包含日期和时间,尽管你没有加入时间,在传送的时候转换为字符串时就会显示出来。 同过学习,我们可以通过这种方式处理。 解决办法: 可以将得到的日期字符串通过这样的转换: new Date(data[i].user_birthday).toLocaleDateString() date Object 的日期部分的字符串表示,以本地时间区表示,并根据本地规则格式化。这样问题就解决啦,是不是很简单 |
|