js内置对象

js内置对象

  1. JavaScript中的对象分为3中;自定义对象/内置对象,浏览器对象

  2. Math对象

    • Math.PI; 圆周率

    • Math.floor();向下取整

    • Math.ceil();向上取整

    • Math.max();最大值

    • Math.min();最小值

    • Math.randon();随机数

    • 得到一个数之间的随机整数,包括两个数在内

      function getRandomIntInclusive(min,max){
          return Math.floor(Math.random()*(max - min + 1)) + min;
      }
      
  3. Date() 日期对象 是一个构造函数 必须使用new 来调用创建

    • var date = new Date();
      console.log(date);//Wed Dec 04 2019 20:17:25 GMT+0800 (中国标准时间)
      var date1 = new Date(2019,10,1);//数字型 Fri Nov 01 2019 00:00:00 GMT+0800 (中国标准时间)
      console.log(new Date('2019-10-1 20:25:30'));//Tue Oct 01 2019 20:25:30 GMT+0800 (中国标准时间)
      
    • Date()方法的使用

      • 获取当前时间必须实例化
      • Date()构造函数的参数
        • 如果括号里面有时间,就返回参数里面的时间。例如日期格式字符串为‘2019-5-1’,可以写成new Date('2019-5-1')或者new Date('2019/5/1')
    • 日期格式化

      • console.log(console.log(new Date().getFullYear());//输出当前年
        
        方法名 说明 代码
        getFullYear() 获取当前年 new Date().getFullYear();
        getMonth() 获取当前月(0-11) new Date().getMonth();
        getDate() 获取当天日期 new Date().getDate();
        getDay() 获取星期几(周日0 到周六6) new Date().getDay();
        getHours() 获取当前小时 new Date().getHours();
        getMinutes() 获取当前分钟 new Date().getMinutes();
        getSeconds() 获取当前秒钟 new Date().getSeconds();
    • console.log(new Date().valueOf());//1575543088420 现在据1970.01.01 00:00:00 总的毫秒数
      console.log(new Date().getTime());
      console.log(+new Date());
      console.log(Date.now());
      
  4. 倒计时案例

    • 核心算法:输入的时间减去现在的时间就是剩余的时间,及倒计时,但是不能拿着时分秒相减,比如05分减去25分,结果会是负数。

    • 用时间戳来做。用户输入时间总的毫秒数减去现在时间的总的毫秒数,得到的就是剩余时间的毫秒数。

    • 把剩余时间总的毫秒数转为天、时、分、秒(时间戳转换为时分秒)

      • 转换公式:

        • d=parseInt(总秒数/60/60/24);//计算天数
        • h=parseInt(总秒数/60/60%24);//计算小时
        • m=parseInt(总秒数/60%60);//计算分数
        • s=parseInt(总秒数%60);//计算当前秒数
      • function conutDown(time){
            var nowTime= +new Date();// 返回的是当前时间总的毫秒数
            var inputTime = +new Date(time);// 返回的时用户输入时间总的毫秒数
            var times = (inputTime - nowTime) / 1000;//times是剩余时间总的秒数
            
            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 + '秒';
        }
        
  5. Array()

    • 创建数组的方式

      • 利用字面量
        • var arr =[];
      • 利用new Array()
        • var arr=new Array(); //创建了一个空数组
        • var arr=new Array(2); //表示数组长度为2 里面有2个空的数组元素
        • var arr=new Array(2,3); //等价于[2,3] 这样写表示 里面有2个数组元素 是 2和3
    • 检测是否为数组

      • instanceof 元算符 它可以用来检测是否为数组

      • var arr=[];
        var obj={};
        console.log(arr instanceof Array); //true
        console.log(obj instanceof Array); //false
        
      • Array.isArray(参数);

    • 添加删除数组元素方法

      • push() 在数组的末尾 添加一个或多个数组元素

        var arr =[1,2,3];
        arr.push(4);
        

        【注意】

        • push 是可以给数组追加新的元素
        • push()参数直接写 数组元素
        • push 完毕之后 ,返回的结果是 新数组的长度
        • 原数组也会发生变化
      • unshift 在数组的开头 添加一个或多个数组元素

        方法名 说明 返回值
        push(参数1.。。) 在数组的末尾 添加一个或多个数组元素 新数组的长度
        pop() 删除数组最后一个元素,把数组长度减一 无参数 修改原数组 返回删除的元素值
        unshift(参数1.。) 在数组的开头 添加一个或多个数组元素 返回新数组的长度
        shift() 删除数组的第一个元素,数组长度减1 无参数/修改原数组 并返回第一个元素的值
    • 数组排序

      方法名 说明 是否修改原数组
      reverse() 点到数组中元素的顺序,无参数 该方法会改变原来的数组 返回新数组
      sort() 对数组的元素进行排序 该方法会改变原来的数组 返回新数组
    • 数组索引方法

      方法名 说明 返回值
      indexOf() 数组中查找给定元素的第一个索引 如果存在返回索引号 如果不存在,则返回-1
      lastIndexOf() 在数组中的最后一个索引 如果存在返回索引号 如果不存在,则返回-1
    • 数组去重案例

      • //核心算法:我们遍历就数组,然后拿就数组元素去查询新数组,如果该元素中在新数组中没有添加,有就不添加
        function unique(arr){
            var newArr=[];
            for (var i = 0 ; i <arr.length; i++){
                if(newArr.indexOf(arr[i] === -1)){
                    newArr.push(arr[i]);
                }
            }
            return newArr;
        }
        
    • 数组转换为字符串

      方法名 说明 返回值
      toString() 把数组转换成字符串,逗号分隔每一项 返回一个字符串
      join('分隔符') 方法用于把数组中的所有元素转换为一个字符串
  6. 字符串对象

    • 字符串所有的方法,都不会修改字符串本身(字符串是不可变的)

    • var str = "abcd,abcd";
      console.log(str.indexOf('c'));//2
      
    • 案例:返回某个字符出现的位置以及次数

      • 核心算法:先查找第一个o出现的位置

      • 然后 只要indexOf返回的结果不是-1就继续往后查找

      • 因为indexOf只能查找到第一个,所以后面的查找,利用第二个参数,当前索引加1,从而继续查找

      • var str="abcoefoxyozzopp";
        var index =str.indexOf('o');
        while(index !== -1){
            console.log(index);
            str.indexOf('o',[index+1]);
        }
        
    • 根据位置返回字符(重点)

      方法名 说明 使用
      charAt(index) 返回指定位置的字符(index 字符串的索引号) str.charAt(0)
      charCodeAt(index) 获取指定位置处字符的ASCII码(index索引号) str.charCodeAt(0)
      str[index] 获取指定位置处字符 HTML5,IE8+和charAt()等效
    • 字符串操作方法

      方法名 说明
      concat(str1,str2,str3...) concat()方法用于连接两个或多个字符串。拼接字符串,等效与+,+更常用
      substr(start,length) 从start位置开始(索引号),length取的个数
      slice(start,end) 从start位置开始,截取end位置,end取不到
      substring(start,end) 从start位置开始,截取到end位置,end取不到 基本和slice相同 但是不接受负值
    • 替换字符

      • replace(‘被替换的字符’,‘替换的字符’)
    • 字符串转换为数组 split("分隔符")

posted @ 2019-12-08 20:40  小咸鱼|大梦想  阅读(221)  评论(0编辑  收藏  举报