Math、Date和字符串对象

目录

js中的对象

js中对象的分类

 Math对象

Math对象的方法

ceil和floor

max 和 min

pow 和 sqrt

round

PI

random

计算0-n的随机整数 !

计算n-m之间的随机整数 100-300 !

abs

 Date

Date对象的创建

时间对象的方法

 moment.js

 字符串对象

indexOf 

charCodeAt

charAt

length:

创建字符串对象 

lastIndexOf    

 字符串对象的截取方法

slice

substring

substr

二者的区别

 字符串对象的其他方法

replace

toUpperCase 和 toLowerCase

trim

split


js中的对象

  • js中一切皆对象

  • js中对象的分类

    • 可以将对象分为“内置对象”、“宿主对象”和“自定义对象”三种。

      • 内置对象 :Array(数组对象)、Boolean(布尔对象)、Date(时间对象)、Function(函数对象)、Global(全局对象)、Math(数学对象)、Number(数字对象)、Object(对象)、RegExp(正则对象)、String(字符串对象),Error对象*

      • 宿主对象:宿主对象就是执行JS脚本的环境提供的对象,就是浏览器提供的对象,如window和document

      • 自定义对象:就是我们自己编写的对象

 Math对象

 定义:Math对象是js中 提供给我们 专门用来处理数学相关问题的对象

  • Math对象的方法

    • ceil和floor

      • ceil(天花板)

        • 用法:Math.ceil(数字)

        • 作用:将指定数字 向上取整 例如:Math.ceil(1.111)===>2

      • floor(地板)

        • 用法:Math.floor(数字)

        • 作用:将指定数字 向下取整 例如:Math.floor(1.99999)===>1

    • max 和 min

      • max

        • 用法:Math.max(数字1,数字2,...)

        • 作用:在一组数字中 获取最大值

      • min

        • 用法:Math.min(数字1,数字2,...)

        • 作用:获取一组数中的最小值

    • pow 和 sqrt

      • pow

        • 用法:Math.pow(x,y)

        • 作用:计算x的y次方

      • sqrt

        • 用法:Math.sqrt(数字)

        • 作用:给指定数字进行开平方

    • round

      • 用法:Math.round(数字)

      • 作用:四舍五入

      • 注意:只针对一位小数

    • PI

      • 用法:Math.PI

      • 作用:获取圆周率

    • random

      • 用法:Math.random()

      • 作用:可以获取到一个0-1范围内的随机数 能取到0 取不到1

      • 计算0-n的随机整数

        • parseInt(Math.random()*(n+1))

      • 计算n-m之间的随机整数 100-300

        • parseInt(Math.random()*(300-100+1))+100

        • parseInt(Math.random()*(m-n+1))+n

    • abs

      • 用法:Math.abs(数字)

      • 作用:获取指定数字的绝对值

 Date

  • Date是js提供给我们的时间对象 专门用来帮助我们操作时间

  • 先创建Date对象 之后才能使用其方法来解决问题

    • Date对象的创建

      • var 变量名 = new Date()

        • 作用:创建当前时间的时间对象

      • var 变量名 = new Date(年,月,日,时,分,秒)

        • 作用:创建指定的时间对象

        • 注意:这种设置方式中 月份的计数 是 0-11

      • var 变量名 = new Date("年 月 日 时:分:秒")

        • 作用同上

        • 注意:这种方式中 月份就是 1-12

      • var 变量名 = new Date("年/月/日 时:分:秒")

        • 作用同上

        • 注意:这种方式中 月份就是 1-12

      • var 变量名 = new Date("年-月-日 时:分:秒")

        • 作用同上

        • 注意:这种方式中 月份就是 1-12

    • 时间对象的方法

      • 时间对象的方法 分为两类 —— 获取 和 设置

        • 时间对象.getFullYear()/setFullYear(指定年份数字)

          • 作用:获取/设置 时间对象的年份

        • 时间对象.getMonth()/setMonth(指定月份)

          • 作用:获取/设置 时间对象的月份

          • 注意:无论获取还是设置 月份都是0-11

        • 时间对象.getDate()/setDate(指定日期)

          • 作用:获取/设置 时间对象的日期

        • 时间对象.getDay()

          • 作用:获取 星期几

          • 注意:获取结果为一个数字 0-6 表示周日-周六

          • 注意:本方法 没有设置方法

        • 时间对象.getHours()/setHours(小时)

          • 作用:获取/设置 时间对象的小时数

        • 时间对象.getMinutes()/setMinutes(分钟)

          • 作用:获取/设置 分钟

        • 时间对象.getSeconds()/setSeconds(秒)

          • 作用: 获取/设置秒

        • 时间对象.getTime()/setTime(数字)

          • 作用:获取/设置 时间戳

          • 说明:时间戳表示 当前时间对象的时间 到 1970年1月1日0:0:0(unix纪元元年)

 moment.js

  • 插件官网地址:Moment.js 中文网

  • 使用moment.js提供的方法 创建时间对象(对应文档中的解析部分)

    • moment.js给我们提供了 创建时间对象的方法——moment

    • 我们必须使用该方法 创建moment时间对象 才能 使用moment提供的方法 来处理时间

      • 创建当前时间的时间对象

        • var 变量名 = moment()

      • 创建目标时间的时间对象

        • var 变量名 = moment("满足ISO-8601或RFC-2822时间格式的时间字符串")

        • 一般我们都使用 年-月-日 时:分:秒的格式即可

        • 需要注意:除了年份之外 所有时间 都必须是两位的 如果是个位数字 需要在前面补0

  • 使用moment提供的方法 来操作时间对象(对应文档中的显示部分)

    • moment给我们提供了一个方法 —— format(格式化)

    • 用法:moment时间对象.fomat()

      • 作用:按照默认标准 对时间进行格式化

    • 用法:moment时间对象.format("令牌字符串")

      • 作用:按照我们自定义的格式 对时间对象进行格式化

 字符串对象

  • 字符串对象 提供的方法
    • indexOf 

      • 用法1:字符串.indexOf("指定的字符片段")

      • 作用:从字符串开头 开始 向末尾 进行查找 查找指定的字符片段 如果能找到 就返回指定片段第一次出现的索引 如果找不到 就返回-1

      • 用法2:字符串.indexOf("指定的字符片段",起始索引)

      • 作用:从起始索引 开始 向末尾 进行查找 查找指定的字符片段 如果能找到 就返回指定片段第一次出现的索引 如果找不到 就返回-1

    • charCodeAt

      • 用法:字符串.charCodeAt(指定索引)

      • 作用:获取字符串中 指定索引 对应的字符编码

    • charAt

      • 用法:字符串.charAt(指定索引)

      • 作用:获取字符串中 指定索引 对应的字符

      • 没有兼容性问题 在任何浏览器都可以使用

    • length:

      • 用法:字符串.length

      • 作用:获取字符串的 长度(也就是字符串中 包含字符的 个数)

    • 创建字符串对象 

      • 字面量创建:var 变量名 = "xxxx"

      • 关键字创建:var 变量名 = String("xxxx");

      • 实例化创建:var 变量名 = new String("xxxx");

    • 在js中 任何数据类型(除了undefined和null) 都具备 对象这一层身份 一般情况下 字符串的对象身份 得不到体现 但在一些特殊情况下 则可以体现出来

  • lastIndexOf    

    • 用法 和 作用 同上 但是 是从后往前找

 字符串对象的截取方法

  • 字符串对象 提供了 三种 截取方法

    • slice

      • 用法:字符串.slice(起始索引,结束索引)

        • 作用:从起始索引开始 进行截取 一直截到 结束索引 将中间的内容 获取到

        • 注意:能取到开头(起始索引对应的字符) 取不到结尾(结束索引对应的字符)

      • 用法2:字符串.slice(起始索引);

        • 作用:从起始索引开始 一直街取到字符串最后

    • substring

      • 用法和作用 同上

    • substr

      • 用法:字符串.substr(起始索引,要截取的位数)

      • 作用:从起始索引开始 向后截取指定位数

  • 从上述用法和作用中 可知 slice 和 substring完全相同没有区别

    • 二者的区别

    • 在更细节的操作

      • 区别1:

        • 当我们将参数传反的时候 也就是说 参数顺序写反了 先写了结束索引 厚些 起始索引

        • slice将无法正常工作 得到的结果是空字符串

        • substring则会自动将参数顺序调整正确 并进行截取

      • 区别2:

        • 当我们传入负数参数的时候

        • substring会直接将负数参数归零 并进行截取

        • slice会先给负数参数 加上 字符串长度 如果结果大于等于0 就使用结果做参数 如果结果依然小于0 就直接归零

 字符串对象的其他方法

  • replace

    • 用法:字符串.replace(旧片段,新片段)

    • 作用:使用新片段替换字符串中的旧片段

  • toUpperCase 和 toLowerCase

    • 用法:字符串.toUpperCase()/toLowerCase()

    • 作用:将字符串转换为大写/小写

  • trim

    • 用法:字符串.trim()

    • 作用:去除字符串两端空格

  • split

    • 用法1:字符串.split("切割标识字符片段")

      • 作用:将字符串 按照指定的切割标识 切割为多个片段,最后将所有片段 组成一个数组 返回出来

      • 注意:切割标识 在切割的过程中 会被舍弃掉

    • 用法2:字符串.split("切割标识",数字)

      • 作用:同上 但是 切割出来的数组的长度 如果小于等于指定数字 就 按照数组自身长度设置就可以,但是如果长度大于 指定数字 就按照指定数字设置数组的长度 多于的数组项 舍弃掉

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值