js中有一些内置的全局对象,可以直接供我们使用,String,Number,Boolean,Date,Math,RegEx.本章主要讲解后三个。
Date 日期对象
什么是Date
js中的Date类型是由早期的Java.Util.Date类型基础上构造的,所以保存的是距离1970年1月1日的毫秒数来存储时间。我们在使用时间上的操作就可以使用Date对象,比如获取时间,获取时间戳等等。
创建
- Date() 使用Date函数创建 返回一个当前时间的字符串
let date = Date();
console.log(date); // Sat Sep 03 2022 10:48:23 GMT+0800 (中国标准时间)
- new Date() 使用构造函数创建 返回一个当前时间的对象
let date = new Date();
console.log(date); // 2022-09-03T02:50:41.631Z
Date的方法
- 获取当前时间
var date=new Date(); - 获取年
date.getFullYear(); - 获取月
date.getMonth(); - 获取日
date.getDate(); - 获取星期
date.getDay(); - 获取时
date.getHours() - 获取分
date.Minutes(); - 获取秒
date.getSeconds(); - 获取毫秒
date.getMilliseconds(); - 获取当前时间距离1970-01-01的毫秒数
date.getTime();
设置年date.setFullYear(2019); - 设置月:
date.setMonth(10); - 设置日:
date.setDate(10); - 设置小时:
date.setHours(08); - 设置分钟:
date.setMinutes(50); - 设置秒钟:
date.setSeconds(50); - 设置秒钟:
date.setSeconds(55); - 设置距离1970/ 01/ 01的毫秒数:
date.setTime(12145445123) - 包含年月日时分秒:
date.toLocalString(); - 包含年月日:
date.toLocalDateString(); - 包含时分秒:
date.toLocalTimeString(); - es5新增时间戳:
Date.now();
日常使用
- 时间戳 我们需要一些唯一不重复的值的时候就可以用时间戳 Date.now()
- day.js库 Day.js是一个极简的JavaScript库,可以为现代浏览器解析、验证、操作和显示日期和时间。
- 自己封装一个时间获取
function getTimer() {
var time = new Date();
var h = time.getHours();
h = h < 10 ? '0' + h : h;
var m = time.getMinutes();
m = m < 10 ? '0' + m : m;
var s = time.getSeconds();
s = s < 10 ? '0' + s : s;
return h + ':' + m + ':' + s;
}
Math
认识Math
math是JavaScript的一个内置对象,它提供了一些数学属性和方法,可以对数字进行计算(用于Number类型)。 math和其他全局对象不同,它不是一个构造器,math的所有方法和属性都是静态的,直接使用并传入对应的参数。
Math的方法
- abs 绝对值
console.log(Math.abs(-10)); // 10
- ceil 向上取整
Math.ceil(1.1) // 2
- floor 向下取整
Math.ceil(1.1) // 1
- cos 余弦
Math.cos(90 * Math.PI) // 1
- sin 正弦
Math.sin(90 * Math.PI / 180) // 1
- min 一组数据的最小值
Math.min( 0, 100, -200, -140) // -200
- max 一组数据的最大值
Math.max( 0, 100, -200, -140) // 100
- round 四舍五入
Math.round(1.1) // 1
Math.round(1.5) // 2
- sqrt 平方根
Math.sqrt(4) // 2
- pow 指数次幂
Math.pow(4,2) // 16
- random 随机数
应用
随机数
function getRandom(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
Reg 正则
正则是什么
正则:也叫做规则,让计算机能够读懂人类的规则;是一个对象
正则创建
- 字面量
let reg = /^a/
- 构造函数
let reg = new RegExp('a');
修饰符
- i 忽略大小写
- g 全局匹配
- m 换行匹配
元字符
- 数字,字母,下划线 \w
- 非数字,字母,下划线 \W
- 数字 \d
- 非数字 \D
- 单个空白字符 \s
- 非空字符 \S
- ^ 行首匹配
- $ 行尾匹配
正则方法
- test
在字符串中匹配正则是否存在,返回布尔值
let reg = new RegExp('^a');
console.log(reg.test('aa')); // true
console.log(reg.test('ba')); // false
- exec
在字符串中匹配正则是否存在 返回数组
let reg = new RegExp('a');
console.log(reg.exec('abc'));// [ 'a', index: 0, input: 'abc', groups: undefined ]