JavaScript-内置对象

目录

内置对象

1. Math对象

2. 日期对象

 获取日期的总的毫秒形式

 倒计时案例

3. 数组对象

1)数组对象的创建

2)检测是否为数组

3)添加或删除数组元素的方法

4)数组排序方法

​ 

 5)数组索引方法

6)数组转换为字符串

​ 

7)其他方法

4. 字符串对象

1)基本包装类型

 2)字符串的不可变

3)根据字符返回位置

4)根据位置返回字符

​ 

5)字符串操作方法


内置对象

  • JavaScript中的对象分为3种:自定义对象、内置对象、浏览器对象
  • 自定义对象、浏览器对象属于ECMAScript,浏览器对象时js独有的
  • 内置对象:js语言自带的一些对象,这些对象供开发者使用,并提供了一些常用的或者是最基本而必要的功能(属性和方法)
  • js提供了多个内置对象:Math、Date、Array、String等

1. Math对象

Math 是一个内置对象,它拥有一些数学常数属性和数学函数方法。Math 不是一个函数对象。

Math.max(value1, value2...) 函数:返回一组数中的最大值。

Math.min(value1, value2...) 函数:返回零个或更多个数值的最小值。

  • 如果没有参数,则结果为 - Infinity
  • 如果有任一参数不能被转换为数值,则结果为 NaN

Math.random() 函数:返回一个浮点数,  伪随机数在范围从0到小于1,在0(包括0)和1(不包括)之间。

    <script>
        //得到两个数之间的随机整数,包括这两个数在内
        function getRandom(max, min) {
            return Math.floor(Math.random() * (max - min + 1)) + min; //含最大值,含最小值  
        }
        console.log(getRandom(1, 10));
    </script>

2. 日期对象

创建一个新Date对象的唯一方法是通过new 操作符,例如:let now = new Date();

new Date();
new Date(value);
new Date(dateString);  //字符串型
new Date(year, monthIndex [, day [, hours [, minutes [, seconds [, milliseconds]]]]]);
  • monthIndex:表示月份的整数值,从 0(1月)到 11(12月)

    <script>
        var date = new Date();
        //根据本地时间返回指定日期的年份
        console.log(date.getFullYear());
        // 根据本地时间,返回一个指定的日期对象的月份,为基于0的值(0表示一年中的第一月)
        console.log(date.getMonth());
        // 根据本地时间,返回一个指定的日期对象为一个月中的哪一日(从1-31)
        console.log(date.getDate());
        // 根据本地时间,返回一个具体日期中一周的第几天,0 表示星期天
        console.log(date.getDay());

        //2022年3月20日星期日
        var year = date.getFullYear();
        //月份从0开始,所以+1
        var month = date.getMonth() + 1;
        var dates = date.getDate();
        var days = ['星期日', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六'];
        //星期几得到的是数字
        var day = date.getDay();
        console.log('今天是' + year + '年' + month + '月' + dates + '日' + days[day]);
    </script>

结果为:

    <script>
        var date = new Date();
        //根据本地时间,返回一个指定的日期对象的小时
        console.log(date.getHours());
        //根据本地时间,返回一个指定的日期对象的分钟数
        console.log(date.getMinutes());
        //根据本地时间,返回一个指定的日期对象的秒数
        console.log(date.getSeconds());

        function getTime() {
            var time = new Date();
            hour = time.getHours();
            hour = hour < 10? '0' + hour : hour;
            minutes = time.getMinutes();
            minutes = minutes < 10? '0' + minutes : minutes;
            seconds = time.getSeconds();
            seconds = seconds < 10? '0' + seconds : seconds;
            return hour + '时' + minutes + '分' + seconds +'秒';
        }
        console.log(getTime());
    </script>

 结果为:

  •  获取日期的总的毫秒形式

Date对象是基于1970年1月1日(世界标准时间)起的毫秒数

    <script>
        //Date总的毫秒数(时间戳),是指距离1970年1月1日经过了多少毫秒数
        var date = new Date();
        //1. valueOf()
        console.log(date.valueOf());
        //2. getTime()
        console.log(date.getTime());
        //3. + 
        var date1 = +new Date();
        console.log(date1);
        //4. H5新增 Date.now()
        console.log(Date.now());
    </script>

结果为:

 倒计时案例

    <script>
        function countDown(time) {
            //当前时间的毫秒数
            var nowTime = +new Date();
            //用户输入时间的毫秒数
            var inputTime = +new Date(time);
            // 相减,得到剩余时间的毫秒数 转为秒:/1000
            var times = (nowTime - inputTime) / 1000;
            //转换为天、时、分、秒
            var d = parseInt(times / 60 / 60 / 24);
            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('2022-3-20 00:00:00'));

    </script>

结果为:

  

3. 数组对象

1)数组对象的创建

  • 字面量方式
  • new Array()
    <script>
        //创建数组的两种方式
        //1.数组字面量
        var arr = [1, 3, 5];
        console.log(arr[1]);
        //2.new Array()
        //创建了一个空的数组
        var arr1 = new Array();
        //创建了数组长度为2的空数组
        var arr2 = new Array(2);
        //数组里面有2个元素是:1和2  
        //等价于 var arr3 = [1, 2];
        var arr3 = new Array(1, 2);
    </script>

2)检测是否为数组

  • instanceof运算符:可以用来检测是否为数组
  • Array.isArray(参数)
    <script>
        //检测是否为数组
        var arr = [ ];
        var obj = { };
        //1.instanceof运算符
        console.log(arr instanceof Array);
        console.log(obj instanceof Array);
        //2.Array.isArray(参数); 
        //是H5新增的方法,支持IE9以上的版本
        console.log(Array.isArray(arr));
        console.log(Array.isArray(obj));
    </script>

 

结果为:

3)添加或删除数组元素的方法

   <script>
        //添加数组元素的方法
        //1.push()方法:在数组的末尾添加一个或者多个数组元素
        //参数直接写数组元素;push完毕之后,原数组发生变化,返回的结果是新数组的长度
        var arr = [1, 2, 3];
        // arr.push(6, 'a');
        console.log(arr.push(6, 'a')); //结果是新数组的长度
        // console.log(arr);

        //2.unshift()方法:在数组的前面添加新的元素
        //参数直接写数组元素;unshift完毕之后,原数组发生变化,返回的结果是新数组的长度
        // arr.unshift('b');
        console.log(arr.unshift('b', 'c'));
        console.log(arr);

        //删除数组元素的方法
        //1.pop()方法:删除数组的最后一个元素,一次只能删除一个元素
        //没有参数;pop完毕之后,原数组发生变化,返回的结果是删除的最后一个元素
        console.log(arr.pop());
        console.log(arr);

        //2.shift()方法:删除数组的第一个元素,一次只能删除一个元素
        //没有参数;shift完毕之后,原数组发生变化,返回的结果是删除的第一个元素
        console.log(arr.shift()); 
        console.log(arr);
    </script>

结果为:

4)数组排序方法

 

    <script>
        //1.翻转数组
        var arr = ['red', 'green', 'blue', 'hotpink', 'skyblue'];
        arr.reverse();
        console.log(arr);

        //2.数组排序(冒泡排序)
        var arr1 = [33, 2, 1, 12, 22];
        arr1.sort(function(a, b) {
            //升序排列
            return a - b;
            //降序排列
            // return b - a;
        });
        console.log(arr1);

    </script>

结果为:

 

 5)数组索引方法

    <script>
        var arr = ['red', 'green', 'blue', 'hotpink', 'skyblue','red'];
        //1.indexOf(数组元素):从头开始查找,返回该数组元素的索引号
        //如果数组元素在数组中有多个,那么返回的事第一个满足条件的索引号
        console.log(arr.indexOf('red'));
        //如果在数组中找不到这个元素,那么返回的是-1
        console.log(arr.indexOf('pink'));

        //2.lastIndexOf(数组元素):从后开始往前查找,返回该数组元素的索引号
        console.log(arr.lastIndexOf('red'));
    </script>

结果为:

 

6)数组转换为字符串

 

    <script>
        //1.toString():将数组转换为字符串
        var arr = ['red', 'green', 'blue', 'hotpink', 'skyblue','red'];
        console.log(arr.toString());

        //2.join(分隔符):将数组转换为字符串,默认是 ,
        console.log(arr.join('&'));
    </script>

结果为:

7)其他方法

 

4. 字符串对象

1)基本包装类型

为了方便操作基本数据类型,JavaScript还提供了三类特殊的引用类型:String、Number和Boolean。

基本包装类型:把简单数据类型包装成为复杂数据类型,这样基本数据类型就有了属性和方法。

 2)字符串的不可变

指的是值不可以变,虽然看上去可以改变内容,但是地址变了,内存中新开辟了一个内存空间。

3)根据字符返回位置

字符串的所有方法,都不会修改字符串本身(字符串是不可变的),操作完成后会返回一个新的字符串。

 

4)根据位置返回字符

 

5)字符串操作方法

    <script>
        var str = "hello";
        //1.concat(字符串1,字符串2...)
        console.log(str.concat("world"));
        //2.substr(截取的起始位置,截取几个字符)
        console.log(str.substr(2,3));

        var str1 = 'hello';
        //3.replace(被替换的字符串,替换的字符串):只会替换第一个字符
        console.log(str1.replace('l','a'));
        //4.split('分隔符'):把字符串转换为数组    join('分隔符'):把数组转换为字符串
        var str2 = 'red, green, blue, pink, yellow';
        console.log(str2.split(','));
    </script>

结果为:

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值