JS学习笔记(六)Date对象/Math对象/包装类/String对象

本文介绍了JavaScript中的Date对象、Math对象和包装类。Date对象用于处理时间,包括新建自定义时间及获取日期、时间戳等方法;Math对象提供了数学运算相关的属性和方法,如取绝对值、随机数等;包装类则讲解了如何将基本数据类型转换为对象,以及这些对象在实际应用中的注意事项。此外,还展示了String对象的一些常用方法,如获取长度、转换大小写和字符串操作。
摘要由CSDN通过智能技术生成

JS学习笔记(六)

学习内置对象的Date对象,Math对象和包装类



一、Date对象

1.新建Date对象

  1. 不带参数新建Date对象 当前时刻的时间
var d1 = new Date();
console.log(d1);
输出:
2021-07-19T04:40:29.878Z//输出当前时刻的时间
  1. 带参数新建Date对象 自定义时间
  • 格式 “ 月份/日/年份 小时:分:秒
var d1 = new Date("12/03/2020 8:10:20");
console.log(d1);
输出:
2020-12-03T00:10:20.000Z //自定义时间

2.Date对象的一些方法

  1. getDate() 获取当前时间日期的
  2. getDay() 获取当前时间日期的星期n 0-6 0是周日
  3. getMonth() 获取当前时间日期的月份 0-11 0是一月份
  4. getFullYear() 获取当前时间日期的年份
  5. getTime() 获取当前日期对象的时间戳
    时间戳是指从格林威治标准时间的1970年1月1日:0时0分0秒到当前日期所花费的毫秒数(1s=1000毫秒)。
    计算机底层保存时间使用的都是时间戳。
  6. Date.now() 获取当前时间的时间戳
var d = new Date("1/1/1970 8:0:0");//东八区8h时差和格林威治
var d2 = new Date();
console.log(d.getTime());
console.log(d2.getTime());
console.log(Date.now());

输出:
0
1626670862199
1626670862206

二、Math对象

  • Math和其他对象不同,是一个对象,不是一个构造函数(如Date),它属于一个工具类,不用创建对象,里面封装了数学运算相关的属性和方法。

1.Math对象属性

  1. Math.PI Π
  2. Math.E e

2.Math对象方法

常用的:

  1. Math.abs() 计算一个数字的绝对值
  2. Math.ceil() 上舍入即向上取整
  3. Math.floor() 向下取整
  4. Math.round() 四舍五入取整
  5. Math.random() 可以生成一个0-1之间的随机数
  6. Math.max() 取最大数
  7. Math.min() 取最小数
  8. Math.pow(x,y) 返回x的y次幂

三、包装类

1.包装类

  • 基本数据类型 String Number Boolean Null Undefined
  • 引用数据类型 Object

在JS中提供三个包装类,可将基本数据类型转换为对象。
三个包装类是String() Number() Boolean(),都是构造函数。

var num = new Number(3);
console.log(typeof num);

输出:
object

1.String()可以将基本数据类型字符串转换为String对象
2.Number()可以将基本数据类型字符串转换为Number对象
3.Boolean()可以将基本数据类型字符串转换为Boolean对象

在实际开发中,不会用到基本数据类型的对象,如果使用基本数据类型的对象,在做比较的时候,可能会带来一些不可预料的结果。

var boo = new Boolean(false);
if(boo)
    console.log("true");
else
    console.log("false");//预期的输出?

输出
true  //boo对象转换布尔值都是true。

2.包装类实际应用

个人理解:常常作为一个浏览器处理的中间量。

在对一些基本数据类型的值去调用方法和属性时,浏览器会临时使用包装类将基本数据类型转换为对象,然后再调用对象的属性和方法,在调用完以后,将其再转换回基本数据类型。

  • 方法和属性只能加给对象,不能添加给基本数据类型。
var s = 123;
console.log(s);
console.log(typeof s); //number

//将s使用包装类转换为s对象,调用toString方法。
s = s.toString();  
//toString方法调用完后,s对象就会销毁,s被转换是string基本数据类型
console.log(s); 
console.log(typeof s);  //string

//给String类型的s加属性,使用包装类转换为s对象,添加属性。
s.hello = "nnn"; 
//属性添加完成后,s对象销毁。

//读s的hello属性,将string类型的s转换为对象,读s对象的hello属性,无该属性。
console.log(s.hello);//undefined

输出:
123
number
123
string
undefined

3. 包装类 String对象

字符串的相关操作
在底层,字符串是以字符数组的形式保存的。

var str = "hello";

属性

  1. str.length 获取字符串长度

方法
大多都不会对原字符串产生影响。

  1. str.charAt() 返回字符串指定位置的字符 =str[n]
  2. str.charCodeAt() 返回字符串指定位置的字符的Unicode编码
  3. String.formCharCode() 可以根据字符编码去获取字符
console.log(String.fromCharCode(89)); //Y
  1. srt.concat() 连接多个字符串,作用和加号相等

  2. srt.indexof(“h”,3) 检索字符串中是否含有指定内容。
    如果有,返回其第一次出现的索引,没有返回-1;
    可以指定第二个参数,指定开始查找的位置。

  3. str.lastIndexof(“h”,3) 从后向前检索字符串中是否含有指定内容。和indexOf使用类似。

  4. str.slice(开始位置索引,结束位置索引) 从字符串中截取指定内容。
    包括开始位置,不包括结束位置。

  5. str.subString(开始位置索引,结束位置索引) 截取字符串,和slice类似,但是不能接受负值,调整参数位置。
    包括开始位置,不包括结束位置。

  6. str.subStr(开始位置索引,结束位置索引) 截取字符串,有的不支持。

  7. str.toLowerCase() 把字符串转换为小写

  8. str.toUpperCase() 把字符串转换为大写

  9. str.split(“,”) 可以将字符串拆分为一个数组。
    需要一个字符串作为参数,该参数去拆分数组。

var str = "hello,biu,mama";
var res =  str.split(",");
console.log(Array.isArray(res));

输出:
true

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值