一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第18天,点击查看活动详情。
一。Date对象
1。 Date 对象用于处理日期和时间
①。new Date() 可以理解为 构造函数Date使用new实例化一个日期对象a,点击刷新日期会变动
<script>
let a=new Date();
document.write(a);
</script>
②。也可以在new Date()里面自定义时间,不过自定义的时间是固定的,刷新页面也不会动,最好是使用字符串格式自定义时间,包容性比较强。
<script>
let a=new Date('2022,4,25 14:54:00');
document.write(a);
</script>
③。如果你的new Date传的是 数字类型 使用逗号分割,月份是从0 开始算的 0 表示1月 1表示2月 2表示3月 3表示4月 以此类推
<script>
let a=new Date(2022,3,25, 14,54,00);
document.write(a);
</script>
④。
getFullYear():返回对象年份,4位数
getMonth():返回对象月份,0-11,0代表1,以此类推
getDate():返回对象日,1-31
getDay():返回对象周几,0-6之间,0表示周日
getHours():返回对象小时数,0-23之间
getMinutes():返回对象分钟数,0-59之间
<script>
let a = new Date('2022-1-25 10:48:45')
document.write(a+'<br>');
// 返回对象年份,4位数
document.write('年:'+a.getFullYear() + '<br>')
// 返回对象月份,0-11,0代表1,以此类推
document.write('月:'+a.getMonth() + '<br>')
// 返回对象日,1-31
document.write('日:'+a.getDate()+'<br>')
// 返回对象周几,0-6之间,0表示周日
document.write('星期几:'+a.getDay()+'<br>')
// 返回对象小时数,0-23之间
document.write('小时:'+a.getHours()+'<br>')
// 返回对象分钟数,0-59之间
document.write('分:'+a.getMinutes()+'<br>')
// 返回对象秒数,0-59之间
document.write('秒:'+a.getSeconds()+'<br>')
</script>
练习一。输出当前日期n天之后是星期几
<script>
let n=prompt('请输入你想查询多少天的日期');
// 当前日期
let b=new Date();
let c=b.getFullYear();
let d=b.getMonth();
let e=b.getDate()+n;
let f=new Date(c,d,e)
var arr = ['周日', '周一', '周二', '周三', '周四', '周五', '周六',]
// f确定了年月日,根据年月日转化为周几
document.write('当前日前'+n+'天后为'+arr[f.getDay()])
</script>
二。时间戳
1.利用new Date()创建当前时间,然后用getTime获取
2.直接用Date.now()获取
3.通过毫秒数也可以获取当前时间
<script>
/* 第一种获取毫秒数的方式 */
let oDate = new Date();
document.write( '1970年1月1日到现在的毫秒数:'+oDate.getTime() +'<br>');
/* 第二种获取毫秒数的方式 */
/* 构造函数本身有个方法叫now 执行之后可以获取1970年1月1日到现在的毫秒数 */
// 推荐使用Date.now()
document.write( '1970年1月1日到现在的毫秒数:'+Date.now() );
</script>
<script>
let a=new Date(1650873927021);
document.write(a);
</script>
练习二。
通过毫秒数生成日期对象
<script>
/* 通过毫秒数生成日期对象 */
let t = new Date(1650772800000)
let y = t.getFullYear();
/* 月份是从0开始的 0 表示1月 */
let m = t.getMonth()+1;
let d = t.getDate();
let h = t.getHours();
let f = t.getMinutes();
let s = t.getSeconds();
let str = y+'年'+bu(m)+'月'+bu(d)+'日'+bu(h)+'点'+bu(f)+'分'+bu(s)+'秒';
document.write(str);
function bu(num){
// return 在函数中可以返回一个值 也会终止函数的继续执行
if(num<10){
// 如果数字小于10则在数字前面加一个0
return "0"+num;
}else{
return num;
}
}
</script>
三。String 对象用于处理文本(字符串)
1.定义字符串的第一种方式:字面量的方式
<script>
let str='123'
document.write(str)
</script>
2.定义字符串的第一种方式:定义一个字符串 可以使用构造函数的方式去实现
构造函数String实例化一个str字符串对象
<script>
let str=new String('123')
document.write(str)
</script>
3.字符串的属性 length
①。字符串的长度:
<script>
let a=('abcde')
document.write(a.length);
</script>
②。返回在指定位置的字符(注:字符串中第一个字符的下标是0)
<script>
let a=('abcde')
let c =a.charAt(4);
document.write(c)
</script>
③。indexOf() 返回某个指定的字符串值在字符串中首次出现的位置
<script>
let a = ('abcde')
let c = a.indexOf('b');
document.write(c)
</script>