静态成员

  • keys(某个对象),得到某个对象的所有属性名数组
  • values(某个对象),得到某个对象的所有属性值数组
  • entries(某个对象),得到某个对象的所有属性名和属性值的数组
  1. var obj = {
  2. x: 123,
  3. y: "Asdfaf",
  4. z: true
  5. };
  6. // var obj = [234, 65, 2, 2, 3444, 111];
  7. var arr1 = Object.entries(obj);
  8. var arr2 = Object.keys(obj);
  9. var arr3 = Object.values(obj);
  10. console.log(arr1,arr2,arr3,);

实例成员

实例成员可以被重写

所有对象,都拥有Object的所有实例成员

  • toString方法:得到某个对象的字符串格式

默认情况下,该方法返回”[object Object]”;

  • valueOf方法:得到某个对象的值

默认情况下,返回该对象本身

在JS中,当自动的进行类型转换时,如果要对一个对象进行转换,实际上是先调用对象的valueOf方法,然后调用返回结果的toString方法,将得到的结果进行进一步转换。

  1. var obj = {
  2. x: 13,
  3. y: 34534,
  4. valueOf() {
  5. return 123;
  6. }
  7. }
  8. console.log(obj + 1);
  9. // 如果调用了valueOf已经得到了原始类型,则不再调用toString
  10. // console.log(obj.valueOf().toString() + 1);

Math对象

提供了一系列与数学相关的成员

常量:永远不会变化的数据。常量一般命名时所有字母大写,如果有多个单词,用下划线分割。

  • random方法: 产生一个0~1之间的随机数
  • PI属性:得到圆周率
  • abs方法:求绝对值
  • floor方法:对一个数向下取整
  • ceil方法:对一个数向上取整
  • max方法:得到一组数字的最大值;如果无参,得到-Infinity
  • min方法:得到一组数字的最小值;如果无参,得到Infinity
  • pow方法:求一个数字的幂次方
  • round方法:得到一个四舍五入的整数

dom地址;

Date构造函数

术语

  1. 时间单位

年(year)
月(month)
日(date)
小时(hour)
分钟(minute)
秒(second) = 1000ms
毫秒(millisecond,ms) = 1000 us
微秒(microsecond,us) = 1000 ns
纳秒(nanosecond,ns)

  1. UTC和GMT

世界划分为24个时区,北京在东8区,格林威治在0时区。

GMT:Greenwish Mean Time 格林威治世界时。太阳时,精确到毫秒。
UTC:Universal Time Coodinated 世界协调时。以原子时间为计时标准,精确到纳秒。

UTC和GMT之间误差不超过0.9秒

GMT+0800 东8区

  1. 时间戳

数字

1970-1-1 凌晨 到 某个时间 所经过的毫秒数

创建时间对象

  • 直接调用函数(不适用new),忽略所有参数,直接返回当前时间的字符串。
  • new Date(): 创建日期对象
  1. 无参,当前时间
  2. 1个参数,参数为数字,表示传入的是时间戳
  3. 两个参数以上,分别表示:年、月、日、时、分、秒、毫秒

注意:月份的数字从0开始计算。

如果缺失参数,日期部分默认为1,时分秒毫秒默认为0。

月、日、时、分、秒、毫秒,均可以传递负数,如果传递负数,会根据指定日期进行计算。

实例成员

  • getDate方法:得到日期部分
  • getDay方法:得到星期几,0表示星期天
  • getFullYear方法:得到年份
  • getHours方法:得到小时部分
  • getMinutes方法:得到分钟部分
  • getSeconds方法:得到秒部分
  • getMilliseconds方法:得到毫秒部分
  • getTime方法:得到时间戳
  • getMonth方法:得到月,从0开始计算
  • setDate方法:设置日期
  • setMonth方法:设置月份
  • setFullYear方法:设置年
  • setMinutes方法
  • setSeconds方法
  • setMilliseconds方法
  • setTime方法:重新设置时间戳
  • toDateString方法:将日期部分转换为可读的字符串。
  • toISOString方法:将整个对象转换为ISO标准的字符串格式。
  • toLocaleDateString方法:根据当前系统的地区设置,将日期部分转换为可读的字符串
  • toLocaleString方法:根据当前系统的地区设置,将整个日期对象转换为可读的字符串
  • toLocaleTimeString方法:根据当前系统的地区设置,将时间部分转换为可读的字符串

日期的运算

日期对象重写了Object中的valueOf方法,返回的是一个数字,表示时间戳

因此,日期对象可以进行数学运算

  1. //返回友好时间
  2. function getDateString(date){
  3. var year = date.getFullYear().toString().padSart(4,'0');
  4. var mouth = (date.getMouth() + 1).toString().padSart(2,'0');
  5. var date = date.getDate().toString().padSart(2,'0');
  6. var hour = date.getHours().toString().padSart(2,'0');
  7. var minute = date.getminutes().toString().padSart(2,'0');
  8. var second = date.getSeconds().toString().padSart(2,'0');
  9. return `${year}-${mouth}-${date} ${hour}:${minute}:${second}`
  10. }
  11. console.log(getDateString(new Date()));

dom地址