Day18
1、 对象
- js的对象的分类
- 内置对象:
ES提供的可以直接被使用的对象
Math对象,数学对象 - 本地对象
是ES提供的一种类方法,需要被实例化后使用
需要被new执行之后,才能使用
String, Object, Array, Number, Boolean, RegExp, Date - 宿主对象
由浏览器或w3c提供的运行ES的对象,所带的对象
BOM:window DOM:document
所有的自定义对象
- 关键字 delete,用来删除自定义对象的属性
- delete 对象.属性名
- 只能删除自定义对象的属性,且一次只能删除一个属性,建议少用
- Math数学对象
- Math是js内置的一个对象,提供了操作数字的许多方法
- 属性:
Math.PI 圆周率 - 方法
a. Math.random();
随机数,随机产生0-1之间的数字,但不包括1
b. Math.round()
取最近的整数
c. Math.ceil();
向上取整
d. Math.floor();
向下取整
e. Math.max();
参数是多个数字,求最大数字
f. Math.min();
参数是多个数字,求最小数字
g. Math.pow();
求幂,两个参数,第一个为底数,第二个为几次幂
h. Math.sqrt();
开根号
i. Math.sin(弧度);
正弦
j. Math.cos(弧度);
余弦
- 如何得到范围随机数
Math.round(Math.random() * (max-min) + min)
2、 进制的转换 - 十进制转其他
- 十进制是日常使用进制,是数值型数据,其他进制数据都用字符串的形式表示
- 十进制转二进制
var binary = num.toString(2); - 十进制转八进制
var octal = num.toString(8); - 十进制转十六进制
var hex = num.String(16);
- 其他转十进制
- parseInt(要转换的数据,作为哪个进制转换);
- var str = “101010”;
- 二进制转十进制
console.log(parseInt(str, 2)); // 42 - 8进制转10进制
console.log(parseInt(str, 8)); // 33288 - 16进制转10进制
console.log(parseInt(str, 16)); // 1052688
- 其他转其他
- 利用十进制做过渡
- parseInt(str,2).toString(8); 二进制转八进制
3、 日期Date对象
- Date日期对象,用来获取当前系统日期,需要new执行后菜呢个使用
- 创建日期对象
new Date(); - 获取日期对象的每一部分
var year = d.getFullYear();
var month = d.getMonth(); // 0~11
var myDate = d.getDate();
var day = d.getDay(); // 0~6
var hours = d.getHours();
var minutes = d.getMinutes();
var seconds = d.getSeconds();
var millS = d.getMilliseconds(); - 设置日期对象
-
直接设置
简单粗暴,但必须整体设置
new Date(要设置的数据)
字符:一个参数,直接设置,不允许日期溢出,否则会无效的日期,没有设置的部分,为0```js var d = new Date("2008.8.8"); var d = new Date("2008/8/8"); var d = new Date("2008-8-8"); var d = new Date("2008,8,8"); var d = new Date("2008 8 8"); var d = new Date("2008.14.8 8:8"); var d = new Date("2008.8.8 8:8"); ``` - 数值:多个参数,直接设置,月份从0开始,日期溢出,向前进1,没有设置的部分,为0 - ```js var d = new Date(2008,8,8); var d = new Date(2008,7,8); var d = new Date(2008,15,8); var d = new Date(2008,15,8); var d = new Date(2008,15,8,20,8,8); ``` - 通过方法设置 - 繁琐,但可以针对性设置 - 没有设置的部分,采取当前日期,月份从0开始,溢出部分,向前进1 ```js d.setFullYear(2008); d.setMonth(14); d.setDate(8); d.setHours(8); d.setMinutes(8); d.setSeconds(8); d.setMilliseconds(666); ``` - 还可以独立设置时间戳 ```js d.setTime(从1970.....到要设置的日期的毫秒数) ```