Js内置对象: Math、Date部分属性

 内置对象:  js中自带的对象,供开发者使用,提供了一些常用/基本而必要的功能(属性和方法)

        如:Math、Date、Away、String ,,,,,,,

Math对象

不是构造函数,不需要new来调用,而是直接使用里面的属性和方法即可。

console.log(Math.PI);                //圆周率
console.log(Math.max(1,99,3));       //最大值
console.log(Math.max(1,28,'god'));   //有非数字,返回NaN
console.log(Math.max());             //没有参数返回 -Infinity(负无穷大)

console.log(Math.abs(-1));
console.log(Math.abs(1));            //取绝对值

console.log(Math.abs('-1'));         //隐式转换 字符->数字
console.log(Math.abs('duck'));       //NaN

Math.floor();       //向下取整
Math.ceil();        //向上取整
Math.round();        //四舍五入

利用对象封装自己的数字对象,存在PI和最大值,最小值。

var myMath={
    PI=3,1415926535,
    max:function(){
        var max = arguments[0];
        for(var i=1;i<argument.length;i++){
            if(arguments[i]>max){
                max = argument[i];
            }
        } 
        return max;
    }
     min:function(){
        var min = arguments[0];
        for(var i=1;i>argument.length;i++){
            if(arguments[i]>min){
                min = argument[i];
            }
        } 
        return min;
    }
  
}

console.log(myMath.PI);
console.log(myMath.max(1,3);
console.log(myMath.min(1,2));

随机数方法random()

函数随机返回一个浮点数,浮点数范围 [0,1),不跟参数。返回两数之间随机整数[m,n]

console.log(Math.random);
Math.floor(Math.random()*(max-min+1)+min);

function getRandom(min,max){
    return Math.floor(Math.random()*(max-min+1)+min);
}
console.log(getRandon(1,10));

随机点名案例

var arr=['我','爱','吃','饭'];
console.log(arr[getRandom(0,4)]);
console.log(arr[getRandom(0,arr.length-1)]);

猜数字游戏

function getRandom(min, max) {
            return Math.floor(Math.random() * (max - min + 1)) + min;
        }
        var random = getRandom(1, 10);
        while (ture) {
            var num = prompt('你猜 1-10');
            if (num > random) {
                alert('bbig');
            } else if (num < random) {
                alert('small');
            } else {
                alert('right');
                break;
            }
        }

Date日期函数的使用

date()数据对象,使用new调用创建日期对象

var arr = new Array();    //创建一个数组对象
var obj = new Object();   //创建一个对象实例

//使用Date
var date = new Date();    //无参数:返回当前系统当前时间
console.log(date);        //输出

//例如
var date1 = new Date(2019,10,1);
console.log(date1);       //返回11月

var date2 = new Date(2019-10-1 8:8:8);
console.log(date2);       //返回10月 (字符串型)

日期格式化

var date = new Date(var date1 = new Date(2019,10,1);
console.log(date.getFullYear());    //返回当前日期的年
console.log(date.getMonth());       //返回当前日期的月份(0-11月)
console.log(date.getMonth()+1);     //返回当前日期的月份
console.log(date.getDate());        //返回当前日期的日
console.log(date.getDay());         //返回当前日期是周几
//格式化当前日期 时 分 秒
var date = new Date();
console.log(date.getHours());      //时
console.log(date.getMinutes());    //分
console.log(date.getSeconds());    //秒

 返回现在所在时间:

function getTime() {
            var time = new Date();
            var h = time.getHours();
            var m = time.getMinutes();
            var s = time.getSeconds();
            h = h < 10 ? '0' + h : h;
            m = m < 10 ? '0' + m : m;
            s = s < 10 ? '0' + s : s;
            return h + ':' + m + ':' + s;
        }
        console.log("当前时间是" + getTime());

倒计时案例

  function countDown(time) {
            var nowTime = +new Date(); //当前时间总毫秒数
            var inputTime = +new Date(time); //用户输入时间总毫秒数
            var times = (inputTime - nowTime) / 1000; //剩余时间的总毫秒数   /1000换算成秒
            var d = parseInt(times / 60 / 60 / 24);
            d = d < 10 ? '0' + d : d;
            var h = parseInt(times / 60 / 60 % 24);
            h = h < 10 ? '0' + h : h;
            var m = parseInt(times / 60 % 60);
            m = m < 10 ? '0' + m : m;
            var s = parseInt(times % 60);
            s = s < 10 ? '0' + s : s;
            return '还有' + d + '天' + h + '时' + m + '分' + s + '秒';
        }
        console.log(countDown('2023-10-19 10:39:09'));
        var date = new Date();
        console.log(date);

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值