Math对象(数学对象)
Math对象提供一组数学相关的API;是一个特殊的对象,不需要new来创建即可使用
PI 获取圆周率
abs() 获取绝对值
ceil() 向上取整
floor() 向下取整
round() 四舍五入取整
pow(x,y) 计算x的y次方, 或者使用 X**Y
max() 获取一组数字的最大值
min() 获取一组数字的最小值
random() 随机数
//圆周率
Math.PI;
//获取绝对值
Math.abs(将进行计算的值(+_*/)计算的值)
//parseInt()取整
//向上取整
Math.ceil(计算的值);
//向下取整
Math.floor(计算的值);
//四舍五入取整
Math.round(计算的值);
//次方(的两种方式)
Math.pow(5, 2), 5 ** ;
//获取一组数字最大值
Math.max(23, 3146, 4787, 6897);
//获取一组数字最小值
Math.min(23, 3146, 4787, 6897);
//随机数
Math.random();
Date对象
用于对日期时间的存储和计算
创建对象
//第一种写法
new Date('2023/12/12 10:59:59')
//第二种写法(第2个参数月份的值为0~11,对应1~12月)
new Date(2023, 3, 4, 10, 59, 20)
//当前的系统时间
var d3 = new Date()
//距离计算机元年的毫秒数(时间戳) 1秒=1000毫秒
var d4 = new Date(53 * 366 * 24 * 60 * 60 * 1000)
获取
//获取年份
Date对象名.getFullYear()
//获取月份
Date对象名.getMonth() + 1
//获取日
Date对象名.getDate()
//获取小时
Date对象名.getHours()
//获取分钟
Date对象名.getMinutes()
//获取秒
Date对象名.getSeconds()
//获取毫秒
Date对象名.getMilliseconds()
//获取一个日期的时间戳
Date对象名.getTime()
//获取当前时间的时间戳
Date.now()
//获得星期 值是0~6,对应星期日到星期六
Date对象名.getDay()
练习
//计算出现在距离五一劳动节还剩多少天
//保存现在的时间
var b = new Date();
//保存五一的时间
var c = new Date('2023/4/29 00:00:00');
//计算出现在的时间到五一的时间需要多少秒,并取整
var e = parseInt((c.getTime() - b.getTime()) / 1000);
//计算秒部分:去除总的相差秒数中含有的分钟(60),剩下的值不满一分钟(60)
var m = e % 60
//计算分钟部分:去除总的相差秒数中含有的小时(3600),再把单位转为分钟
var f = parseInt((e % (3600)) / 60)
//计算小时部分:去除总的相差秒数中含有的天(24*3600),再把单位转为小时
var o = parseInt((e % (3600 * 24)) / 3600)
//计算天部分:直接转换为天
var t = parseInt((e % (3600 * 24 * 365)) / (3600 * 24))
//最后输出
console.log("现在距离五一劳动节放假还剩" + t + "天" + o + "小时" + f + "分钟" + m + "秒");
设置
//获取年份
Date对象名.setFullYear()
//获取月份
Date对象名.setMonth() + 1
//获取日
Date对象名.setDate()
//获取小时
Date对象名.setHours()
//获取分钟
Date对象名.setMinutes()
//获取秒
Date对象名.setSeconds()
//获取毫秒
Date对象名.setMilliseconds()
//获取一个日期的时间戳
Date对象名.setTime()
拷贝Date对象
把要拷贝的对象作为参数传递给new Date()
var d = new Date();
//拷贝d对象
var d1 = new Date(d);
将Date对象转为字符串
toLocaleString()
存在兼容性问题,只能用于开发调试阶段
数值对象
new Number() 将一个数字包装为对象
Number() 将一个值转为数值型
//字面量
var 数值名 = 1
//包装为对象
var 数值名 = new Number(1);
//转为数值
var 数值名 = Number(true)
API
toFixed(n) 保留小数点后n位
布尔对象
new Boolean() 将一个布尔值包装为对象
Boolean() 将一个值转换为布尔型
!!值 将一个值隐式转换为布尔型
//字面量
var 名称 = true;
//包装为对象
var 名称 = new Boolean(true);
错误处理
常见错误
语法错误(syntaxError):代码编写不符合语法规范,例如:缺少半块括号,使用了中文符号…(所有代码不执行)
引用错误(ReferenceError):访问的变量找不到,例如:变量名称写错或由于作用域原因无法访问到(在错误之下的代码不执行)
类型错误(TypeError):调用API或者函数,不是一个函数类型,例如API名称写错(在错误之下的代码不执行)
范围错误(RangeErrot):使用的值超出了js的规范位置,例如:参数提供,递归调用可能出现内存占满\
自定义错误(在throw后面写错误内容):用户自己指定的错误,
语法:
throw 自定义错误内容
错误处理
出现错误以后,不阻止后续代码执行
try {
//尝试执行
console.log(mun);
} catch (形参) {
//捕捉到try中出现错误,放入到err
console.log(err);
//处理错误
mun = 1
}
(非商用,转载请标明出处)