学习js的第三周

106 阅读3分钟

以下是我的部分笔记,如有错误,欢迎指正!

Date对象

  • 在JS中使用Date对象来表示一个时间
//如果直接使用构造函数创建一个Date对象,则会封装为当前代码执行的时间
 var d = new Date();
 //创建一个指定的时间对象,需要在构造函数中传递一个表示时间的字符串作为参数
 var d = new Date("01/21/2022");
  • getDate():从Date对象返回一个月中的某一天(1~31);
  • getDay():从Date对象返回一周中的某一天(0~6)0表示周日;
  • getMonday():从Date对象返回月份(0~11)0表示一月;
  • getFullYear():获取年份
  • getHours():获取小时(0~23);
  • getMinutes():获取分钟(0~59);
  • getSeconds():获取秒(0~59);
  • getMilliseconds():获取当前毫秒数
  • getTime():获取当前日期对象的时间戳。时间戳指的是从格林威治标准时间的1970年1月1日,0时0分0秒到当前日期所花费的毫秒数

Math:

  1. 和其它对象不同,它不是一个构造函数,它属于一个工具类不用创建对象,它里面封装了数学运算相关的属性和方法,比如Math.PI表示圆周率
  • abs()可以用来计算一个数的绝对值;
  • Math.ceil(): 可以对一个数进行向上取整,小数位只要有值就自动进一;
  • Math.floor(): 可以对一个数向下取整,小数部分会被舍掉;
  • Math.round(): 可以对一个数进行四舍五入取整;
  • Math.random(): 可以用来生成一个0-1之间的随机数;
  • Math.round(Math.random()*10)); 生成0-10的随机数
  • Math.round(Math.random()*(y-x)+x)); 生成一个x-y之间的随机数;
  • Math.max(); 获取多个数中最大值
  • Math.min(); 获取多个字中最小值
  • Math.pow(x,y); 返回x的y次幂
  • Math.sqrt(); 开方

包装类

在JS中为我们提供了三个包装类,通过这三个包装类可以将基本数据类型的数据转换为对象,首字母大写,都是构造函数

  • String():可以将基本数据类型字符串转换为String对象

  • Number():可以将基本数据类型的数字转换为Number对象

  • Boolean():可以将基本数据类型的布尔值转换为Boolean对象 但是注意:我们在实际应用中不会使用基本数据类型的对象,如果使用基本数据类型的对象,在做一些比较时可能会带来一些不可预期的结果

    创建一个Number类型的对象 num = 3; var num = new Number(3); //把3转换成对象,值还是3 var num2 = new Number(3); //num2 不等于num var bool = new Boolean(true); var bool2 = true; //bool等于bool2,但不全等

  • 方法和属性之能添加给对象,不能添加给基本数据类型,当我们对一些基本数据类型的值去调用属性和方法时,浏览器会临时使用包装类将其转换为对象,然后在调用对象的属性和方法,调用完以后,在将其转换为基本数据类型

 var s = 123; 
 s = s.toString(); //临时性转化成对象1,调用toString方法,转换成字符串后,赋值给s,对象1销毁 

call()和apply()

apply:应用某一对象的一个方法,用另一个对象替换当前对象。

  • func.apply(func1,[var1,var2,var3])

call:调用一个对象的一个方法,以另一个对象替换当前对象。

  • func.call(func1,var1,var2,var3)