JS的数组对象、日期对象

数组对象

        创建数组的两种方式

                1.字面量创建

                var arr = [];

                2.利用new Array()

                var arr1 = new Array();

                var arr1 = new Array(2); //2表示数组长度,里面有两个空元素

                var arr1 = new Array(2, 3); //表示创建数组包含两个元素为2和3

        检测是否是数组

                1.instanceof 运算符

                2.Array.isArray(参数)

        添加删除数组元素的方法

                1.push() 末尾添加一个或多个元素,参数直接写要添加的数组元素,注意修改原数组,返回结果是新的长度

                2.pop() 删除数组的最后一个元素,把数组的长度减一,无参数,返回删除的元素的值

                3.unshift() 向数组的开头添加一个或多个元素,注意修改原数组,返回新的长度

                4.shift() 删除数组的第一个元素,数组长度减一,无参数,返回第一个元素的值

                var arr = [1, 2, 3]

                arr.push(4); //添加一个数组元素4

                console.log(arr);

                console.log(arr.push(4))

                arr.pop(); //把添加的数组元素4删除

                console.log(arr);

                console.log(arr.pop()); //返回删除的元素的值

                arr.unshift(5); //在数组的开头添加数组元素5

                console.log(arr);

                arr.shift(); //把上面在开头添加的数组元素5删除

                console.log(arr);

                console.log(arr.shift()); //注意返回的是第一个元素的值,而不是删除的元素的值

        反转数组

                reverse() 方法

        数组排序

                sort() 方法 如果直接使用sort()方法,只能对小于10的数进行排序(这个方法会将元素转换为字符串然后根据Unicode编码进行排序的),

                而想要解除这个限制,需要做下面的操作

                sort(function(a, b){ //这个函数可以使数组按升序排序,换成b - a会变成降序排序

                return a - b;

                })

        获取数组元素索引号方法

                indexof() 作用就是返回查找到的第一个元素的索引号,找不到元素时返回-1

                lastindexof() 则相反,从后面开始查找

                var arr = [];

                function unique(arr) {

                var newArray = new Array();

                for(var i = 0; i< arr.length; i++){

                if(newArray.indexOf(arr[i]) == -1){ //去除重复,在新数组找不到相同的元素则把元素加入

                newArray.push(arr[i]);

                                }

                        }

                return newArray;

                }

                var arr1 = [1, 2, 1, 3, 55, 4, 88, 5, 4, 9];

                var arr2 = unique(arr1);

                console.log(arr2);

                var arr3 = arr2.sort(function(a, b){ //排序

                return a - b;

                });

                console.log(arr3);

      数组转换为字符串

                1.toString()方法

                2.join('分隔符') 默认是 ‘,’

                      var arr = [1, 2, 3];

                      console.log(arr.toString()); //1,2,3

                      console.log(arr.join('-')); //1-2-3

日期对象:

        日期格式化

                        Date() 日期对象是一个构造函数,必须使用new来调用 创建日期对象

                        使用Date没有参数会返回当前的系统时间

                        参数的常用写法 数字型 2000, 01, 01 字符串型 '2000-01-01 08:08:08'

                        getHours() getMinites() getSeconds() 这三个方法获取时、分、秒

                        var date1 = new Date('2000-01-01 08:08:08');

                        console.log(date1);

                        var date2 = new Date(2000, 01, 01, 08, 08, 08); //返回的月份大一个月

                        console.log(date2);

                        //获取当前时间

                        function currentTime() {

                        var time = new Date();

                        var h = time.getHours();

                        h = h < 10? '0' + h: h;

                        var m = time.getMinutes();

                        m = m < 10? '0' + m: m;

                        var s = time.getSeconds();

                        s = s < 10? '0' + s: s;

                        return h + ':' + m + ':' + s;

                        }

                        console.log(currentTime());

                //获得Date总的毫秒数(时间戳) 距离1970年1月1日过了多少毫秒

                //通过 valueof() getTime()

                        var date = new Date();

                        console.log(date.getTime());

                        console.log(date.valueOf());

                        //简单的写法(最常用)

                        var date1 = +new Date();

                        console.log(date1);

                        //H5新增的

                        console.log(Date.now());

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值