JS中的一些其他内建对象
一.Date
1.Date对象的创建
- 在JS中用Date对象来表示一个时间
- Date的无参构造函数会封装当前代码执行时的时间.
- 以字符串为参数的构造函数, 可以指定Date对象的时间.字符串格式: “月/日/年 时:分:秒”
1 | var date1 = new Date(); |
2.Date的一些方法
getDate() 从 Date 对象返回一个月中的某一天 (1 ~ 31)
getDay() 从 Date 对象返回一周中的某一天 (0 ~ 6)
getMonth() 从 Date 对象返回月份 (0 ~ 11)
getFullYear() 从 Date 对象以四位数字返回年份
getHours() 返回 Date 对象的小时 (0 ~ 23)。
getMinutes() 返回 Date 对象的分钟 (0 ~ 59)
getSeconds() 返回 Date 对象的秒数 (0 ~ 59)
getMilliseconds() 返回 Date 对象的毫秒(0 ~ 999)
getTime() 返回(格林威治时间的)1970年1月1日 00:00:00至今的毫秒数, 即时间戳
setTime() 以毫秒设置 Date 对象
Date.now() 返回当前的时间戳
1 | var date1 = new Date("01-27-2019 08:16:24.100"); |
二.Math
Math和其他内置对象不同, 它不能是一个构造函数, 不能创建对象, 它只是一个工具类, 里面封装了一些数学运算中常用的属性和函数.
1.常用属性和函数
Math.PI 返回圆周率(约等于3.14159)
abs(x) 返回数的绝对值
ceil(x) 对数进行上舍入
floor(x) 对数进行下舍入
round(x) 把数四舍五入为最接近的整数
random() 返回0~1之间的随机数. 生成x~y之间的随机数: Math.round(Math.random()*(y-x)+x);
max(x,y) 返回 x 和 y 中的最高值
min(x,y) 返回 x 和 y 中的最低值
pow(x,y) 返回 x 的 y 次幂
sqrt(x) 返回数的平方根
1 | console.log(Math.PI);//输出:3.141592653589793 |
三.包装类
回顾: 基本数据类型(Number String Boolean Null Undefined)VS引用数据类型(Object)
JS为我们提供了三个包装类(Number String Boolean):
Number—>可以将基本数据类型的Number转换为Number对象
String —>可以将基本数据类型的String转换为String对象
Boolean—>可以将基本数据类型的Boolean转换为Boolean对象
但是, 注意: 实际应用时我们一般不会使用基本数据类型的对象, 若使用, 在做比较时可能会带来一些不可预期的结果
- 方法和属性只能添加给对象, 不能添加给基本数据类型.
- 当我们调用基本数据类型的属性和方法时, 浏览器会临时使用包装类将其转换为对象, 再调用对象的属性和方法.
- 包装类一般是浏览器底层自己调用的, 我们一般不会使用它们.
1 | var num = new Number(123); |
1.数字进制间的转换
Number对象有个方法toString()我们常用它来转换进制, 参数为基数
1 | var num = 123; |
四.String对象的方法
length 属性, 字符串的长度
charAt() 返回在指定位置的字符
charCodeAt() 返回在指定的位置的字符的 Unicode 编码
concat() 连接字符串
String.fromCharCode() 从字符编码创建一个字符串, 参数一个或多个Unicode值
indexOf() 检索字符串, 有则返回索引, 没有返回-1
--------参数:①要检索的字符串, 必需
--------②要从哪个位置开始检索, 不传从0开始检索
lastIndexOf() 和indexOf类似, 不过这个方法从后向前搜索字符串
slice() 提取字符串的片断, 将指定的字符串封装到新字符串返回
--------两个参数:①截取开始位置的索引, 包括开始位置, 可以为负数(-1表示倒数第一个元素)
--------②结束位置的索引, 不包括结束位置(该参数可省略, 表示截取之后所有元素), 可以为负数
substring() 提取字符串中两个指定的索引号之间的字符
--------与splice类似, 但其参数不可为负值, 若传负值, 则默认使用0.
--------该方法还会自动调整参数位置, 若第二个参数小于第一个, 则交换两个参数
substr() 从起始索引号提取字符串中指定数目的字符
--------ECMAscript 没有对该方法进行标准化, 但现今大部分浏览器支持
--------两个参数:①截取开始位置索引(可为负数)②(可选参数)要截取字符的数量
split() 把字符串分割为字符串数组
--------两个参数:①必需, 字符串或正则表达式, 从该参数指定的地方分割
--------②可选, 指定返回的数组的最大长度
toLowerCase() 把字符串转换为小写
toUpperCase() 把字符串转换为大写
这些方法都不会改变原来的字符串
1.连接检索字符串
1 | var str = "hello China,hello World!"; |
2.截取字符串
1 | var str = "abcdefghijklmn"; |
3.分割转换字符串
1 | var str = "Abc,def,ghi,jkL"; |