javascript-内置对象(方法)

JavaScript的内置对象:可以直接使用的对象(不需要使用字面量、Object、构造函数创建的对象,JavaScript已经定义好的对象)

1、使用MDN(web开发文档的网站)查询资料:MDN 是 Mozilla基金会的开发者网络平台。提供了大量关于各种HTML、CSS和JavaScript功能的开放、详细的文档,以及广泛的Web API参考资料。(MDN Web Docs

2、Math对象:是一个内置对象,用于数学运算的。不是一个函数对象(通过构造函数创建的对象称为函数对象),在创建Math对象不能使用new运算符(即不能 new Math()),它的属性和方法在使用时采用:

Math.属性名

Math.方法名(【参数】)

(1)属性:

Math.PI :表示圆周率

(2)方法:

Math.abs(x) :返回参数x的绝对值

Math.floor(x):返回小于等于形参x的最大整数。向下取整

Math.ceil(x):返回大于等于形参x的最小整数。向上取整

Math.max(x,y,z...):返回所有参数的最大值

Math.min(x,y,z...):返回所有参数的最小值

Math.pow(x,y):返回x的y次方

Math.sqrt(x):返回x的算术平方根

Math.round(x):取整,x四舍五入后的整数

Math.random():返回0.0~1.0之间的随机数(不包含1.0)

Math.trunc():

练习1:定义一个函数,返回min~max之间的随机数

function Random(){  //定义构造方法:没有属性
            this.getRandom = function(min,max){
                let num = Math.random()*(max-min)+min
                return Math.round(num)
            }   
        }
let r1 = new Random()  //创建对象r1
console.log(r1.getRandom(10,50)) //通过对象r1调用方法生成随机数

练习2:定义一个3*4的二维数组,数组元素随机生成,并输出数组

function Random(){  //定义构造方法:没有属性
            this.getRandom = function(min,max){
                let num = Math.random()*(max-min)+min
                return Math.round(num)
            }   
        }
        let r1 = new Random()  //创建对象r1
        console.log(r1.getRandom(10,50)) //通过对象r1调用方法生成随机数
​
        //1.定义3*4的二维数组
        let arr = new Array( new Array(4),
                             new Array(4),
                             new Array(4))
​
        //2.随机生成二维数组中的元素、并显示
        let str = ''
        for(let i=0;i<arr.length;i++){ //行下标
            for(let j=0;j<arr[i].length;j++){ //列下标
                arr[i][j] = r1.getRandom(10,50)
                str += arr[i][j] + '\t'
            }
            str +='\n'
        }
        console.log(str)

3、Date对象:是一个函数对象,使用new 运算符创建对象

(1)构造函数:

a、无参的构造函数:new Date() --->使用的日期格式是月日年

b、传入年月日、时分秒:new Date(年,月,日,时,分,秒) --->月份值应该在0~11之间,0表示1月,11表示12月

c、传入字符串表示日期和时间:new Date(‘字符串’)

d、传入整数:new Date(整数) --->整数表示毫秒数

(2)其他函数:

a、getFullYear():获取年份(4位)

b、getMonth():获取月份(0~11)

c、getDate():获取日期(月份中的某一天,1~31)

d、getDay():获取星期(0~6,0表示星期天)

e、getHours():获取小时数

f、getMinutes():获取分钟数

g、getTime():获取1970年1月1日0时0分0秒到当前日期时间之间的毫秒数

h、toLocaleDateString():返回该日期对象日期部分的字符串(即将年月日转换为字符串)

i、toLocaleString():返回该日期对象的字符串(即将日期对象转换为字符串)

j、toLocaleTimeString():返回该日期对象时间部分的字符串(将时分秒转换为字符串)

k、toTimeString():以人类易读形式返回一个日期对象时间部分的字符串

练习3、'三天打渔两天晒网',假如2008-8-8这天某人在打渔,若从这天开始算,那么2022-10-21是打渔还是晒网

(1)两个日期对象:2008-8-8 和 2022-10-21,计算两个日期对象之间的天数

(2)用天数对5取余,得到是打渔还是晒网(1、2、3是打渔,0、4是晒网)

//1.创建日期对象
        let d1 = new Date('2008-8-8')
        let d2 = new Date()
​
        //2.计算时间差
        let times = d2.getTime()-d1.getTime()
        console.log(times)
​
        //3.将毫秒数转换成天数
        let days = parseInt(times/1000/3600/24)
        console.log(days)
​
        //4.判断是打渔还是晒网
        let s = days % 5
        if(s ==1 || s==2 || s==3){
            console.log('打渔')
        }else{
            console.log('晒网')
        }

练习4、倒计时(2023年元旦的倒计时),格式是:距离2023年元旦还有 X 天 X 时 X 分 X 秒

(1)创建两个日期对象:当前日期对象、创建2023-1-1日期对象

(2)计算它们之间相差的毫秒数

(3)将该毫秒数转换成天、时、分、秒

//1.创建日期对象
        let end = new Date('2023-1-1') 
        let start = new Date()
​
        //2.计算得到两个日期对象之间的毫秒数之差,转换成秒钟
        let times = (end - start)/1000
​
        //3.计算得到天、时、分、秒
        let d = parseInt(times/60/60/24)  //转换成天数
            d = d < 10 ? ('0'+d):d //如果天数是个位数,则在前面补0
​
        let h = parseInt(times/60/60%24)
            h = h < 10? ('0'+h):h
​
        let m = parseInt(times/60%60)
            m = m < 10? ('0'+m):m
​
        let s = parseInt(times%60)
            s = s < 10? ('0'+s):s
​
        let info = `距离2023年元旦还有 ${d} 天 ${h} 时 ${m} 分 ${s} 秒`  
        console.log(info)  

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值