From 6b9d18eb82c926185a1dae50b290badcf46a1263 Mon Sep 17 00:00:00 2001 From: qianguyihao Date: Tue, 3 Mar 2020 09:41:15 +0800 Subject: [PATCH] =?UTF-8?q?update:=20=E5=86=85=E7=BD=AE=E5=AF=B9=E8=B1=A1?= =?UTF-8?q?=20Date?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 00-前端工具/01-VS Code的使用.md | 12 ++- 04-JavaScript基础/21-内置对象:Date.md | 136 +++++++++++++++++++------ 18-推荐链接/02-GitHub项目推荐.md | 7 ++ README.md | 6 -- 4 files changed, 122 insertions(+), 39 deletions(-) diff --git a/00-前端工具/01-VS Code的使用.md b/00-前端工具/01-VS Code的使用.md index 27acf5f..c289147 100644 --- a/00-前端工具/01-VS Code的使用.md +++ b/00-前端工具/01-VS Code的使用.md @@ -466,7 +466,7 @@ VS Code 有一个很强大的功能就是支持插件扩展。 我来列举几个常见的插件,这些插件都很实用。 -### GitLens +### GitLens 【荐】 我强烈建议你安装插件`GitLens`,它是 VS Code 中我最推荐的一个插件,简直是Git神器,码农必备。如果你不知道,那真是out了。 @@ -585,24 +585,28 @@ css 颜色管理。 安装了插件 `TODO Highlight`之后,按住「Cmd + Shift + P」打开命令面板,输入「Todohighlist」,选择相关的命令,我们就可以看到一个 todoList 的清单。 -### WakaTime +### WakaTime 【荐】 统计写代码的时间。 ### Code Time -`Code Time`插件:记录编程时间,统计代码行数。摸鱼必备。 +`Code Time`插件:记录编程时间,统计代码行数。 安装该插件后,VS Code 底部的状态栏右下角可以看到时间统计。点击那个位置之后,选择「Code Time Dashboard」,即可查看统计结果。 备注:团长试了一下这个 code time 插件,发现统计结果不是很准。 -### Markdown Preview Github Styling +### Markdown Preview Github Styling 【荐】 以 GitHub 风格预览 Markdown 样式。 +### Markdown Preview Enhanced + +预览 Markdown 样式。 + ### Settings Sync diff --git a/04-JavaScript基础/21-内置对象:Date.md b/04-JavaScript基础/21-内置对象:Date.md index 1178280..450fbaa 100644 --- a/04-JavaScript基础/21-内置对象:Date.md +++ b/04-JavaScript基础/21-内置对象:Date.md @@ -2,51 +2,98 @@ ## 内置对象:Date -### Date对象的创建 +> Date 对象在实际开发中,使用得很频繁,且容易在细节地方出错,需要引起重视。 -**写法一**:表示的是当前代码执行的时间(也可以理解成是获取当前时间对象) +内置对象 Date 用来处理日期和时间。 + +**需要注意的是**:与 Math 对象不同,Date 对象是一个**构造函数** ,需要**先实例化**后才能使用。 + +## 创建Date对象 + +创建Date对象有两种写法: + +- 写法一:如果Date()不写参数,就返回当前时间对象 + +- 写法二:如果Date()里面写参数,就返回括号里输入的时间对象 + +针对这两种写法,我们来具体讲一讲。 + +### 写法一:不传递参数时,则获取系统的当前时间对象 + +代码举例: ```javascript - var date1 = new Date(); - console.log(date1); +var date1 = new Date(); +console.log(date1); +console.log(typeof date1); ``` -**写法二**:在参数中传递一个表示时间的字符串(兼容性最强) +代码解释:不传递参数时,表示的是获取系统的当前时间对象。也可以理解成是:获取当前代码执行的时间。 + +打印结果: + +``` +Mon Feb 17 2020 21:57:22 GMT+0800 (中国标准时间) +object +``` + +### 写法二:传递参数 + +参数中既可以传递数字,也可以传递字符串。 + +代码举例: ```javascript - var date2 = new Date("2017/09/06 09:00:00"); - console.log(date2); +var date21 = new Date('2020/02/17 21:00:00'); +console.log(date21); +// Mon Feb 17 2020 21:00:00 GMT+0800 (中国标准时间) + +var date22 = new Date(2020, 2, 18); // 第二个参数返回的是三月,不是二月 +console.log(date22); +// Wed Mar 18 2020 00:00:00 GMT+0800 (中国标准时间) + +var date23 = new Date(2020, 3, 18, 22, 59, 58); +console.log(date23); +// Sat Apr 18 2020 22:59:58 GMT+0800 (中国标准时间) + +var date24 = new Date('2020/04/19'); // 返回的就是四月 +console.log(date24); +// Sun Apr 19 2020 00:00:00 GMT+0800 (中国标准时间) + +var date25 = new Date('2020-05-20'); +console.log(date25); +// Wed May 20 2020 08:00:00 GMT+0800 (中国标准时间) + +var date26 = new Date('Wed Jan 27 2017 12:00:00 GMT+0800 (中国标准时间)'); +console.log(date26); +// Fri Jan 27 2017 12:00:00 GMT+0800 (中国标准时间) + ``` -写法三:(不常用) -```javascript - var date3 = new Date('Wed Jan 27 2017 12:00:00 GMT+0800 (中国标准时间)'); - console.log(date3 ); -``` -写法四:(不常用) -```javascript - var date4 = new Date(2017, 1, 27); //写法四 - console.log(date4); -``` +## 日期的格式化 -以上四种写法的打印结果是: +上一段内容里,我们获取到了 Date **对象**,但这个对象,打印出来的结果并不是特别直观。 -![](http://img.smyhvae.com/20180202_1040.png) +如果我们需要获取日期的**指定部分**,就需要用到 Date对象自带的方法。 -### 获取日期和时间 +获取了日期指定的部分之后,我们就可以让日期按照指定的格式,进行展示(即日期的格式化)。比如说,我期望能以 `2020-02-02 19:30:59` 这种格式进行展示。 -Date对象 有如下方法,可以获取日期和时间: +在这之前,我们先来看看 Date 对象有哪些方法。 -- `getDate()` **获取日 1-31** +### Date对象的方法 -- `getDay()` **获取星期 0-6**(0代表周日,1代表周一) +Date对象 有如下方法,可以获取日期和时间的**指定部分**: + +- `getFullYear() ` 获取年份 - `getMonth() ` **获取月 0-11**(0代表一月) -- `getFullYear() ` 获取年份 +- `getDate()` **获取日 1-31**。即:获取的是几号 + +- `getDay()` **获取星期 0-6**(0代表周日,1代表周一) - `getHours() ` 获取小时 0-23 @@ -56,17 +103,20 @@ Date对象 有如下方法,可以获取日期和时间: - `getMilliseconds()` 获取毫秒 (1s = 1000ms) -代码举例: +**代码举例**: ```javascript // 我在执行这行代码时,当前时间为 2019年2月4日,周一,13:23:52 var myDate = new Date(); console.log(myDate); // 打印结果:Mon Feb 04 2019 13:23:52 GMT+0800 (中国标准时间) - console.log(myDate.getDate()); // 打印结果:4 - console.log(myDate.getDay()); // 打印结果:1 - console.log(myDate.getMonth()); // 打印结果:1 + console.log(myDate.getFullYear()); // 打印结果:2019 + console.log(myDate.getMonth() + 1); // 打印结果:2 + console.log(myDate.getDate()); // 打印结果:4 + + console.log(myDate.getDay()); // 打印结果:1 + console.log(myDate.getHours()); // 打印结果:13 console.log(myDate.getMinutes()); // 打印结果:23 console.log(myDate.getSeconds()); // 打印结果:52 @@ -75,8 +125,36 @@ Date对象 有如下方法,可以获取日期和时间: console.log(myDate.getTime()); // 获取时间戳。打印结果:1549257832393 ``` +获取了日期和时间的指定部分之后,我们把它们用字符串拼接起来,就可以按照自己想要的格式,来展示日期。 -### getTime():获取时间戳 + +### 举例1:年月日的格式化 + +代码举例: + +```javascript + // 格式化年月日:2020年2月2日 星期三 + var date = new Date(); + var year = date.getFullYear(); + var month = date.getMonth() + 1; + var dates = date.getDate(); + var day = date.getDay(); + var arr = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六']; + + console.log('今天是:' + year + '年' + month + '月' + dates + '日 ' + arr[day]); +``` + + +### 举例2:时分秒的格式化 + + +封装一个函数,返回当前时间的时分秒,格式为 06:06:06) + + + + + +## getTime():获取时间戳 Date对象 还有如下方法: diff --git a/18-推荐链接/02-GitHub项目推荐.md b/18-推荐链接/02-GitHub项目推荐.md index 49432a7..c90a2fb 100644 --- a/18-推荐链接/02-GitHub项目推荐.md +++ b/18-推荐链接/02-GitHub项目推荐.md @@ -57,4 +57,11 @@ ## 学会提问 +- + + + + + + diff --git a/README.md b/README.md index 92643df..b2ae13b 100644 --- a/README.md +++ b/README.md @@ -25,12 +25,6 @@ ## 学习交流 -我建了一个“前端学习”的微信交流群,目前来看,学习氛围很不错。在下方公众号里回复「前端学习」,拉你进群: - -- 进群暗号:前端学习。 - -- 进群要求:少提问、少闲聊、多分享(长期潜水的,就不必了)。 - 关注微信公众号「**千古壹号**」,学习代码之外的技能。扫一扫,你将发现一个全新的世界,而这将是一场美丽的意外: ![](http://img.smyhvae.com/20190101.png)