• JavaScript中内置对象的方法总结


    javascript中的对象分为3种:自定义对象(数据类型中的对象)、内置对象、浏览器对象。
    内置对象:指javascript语言自带的一些对象,供开发者使用,提供了一些常用、最基本、必要的功能(属性和方法)。

    math 对象方法

    存在隐式类型转换 会把字符类型转换成数字类型。

    1. min() 最小值

      Math.min(10,-5,30,42);   /* -5 返回最小值 内有非数字则返回NAN 若没有数值则返回-Infinity(负无穷) */
      
      • 1
    2. max() 最大值

      Math.max(10, 20, 9, 52);   /* 52 返回最大值 内有非数字则返回NAN 若没有数值则返回Infinity(无穷) */
      
      • 1
    3. PI 圆周率

      console.log(Math.PI);   /* π 3.141592653589793 */
      
      • 1
    4. floor() 向下取整

      Math.floor(3.92);   /* 3 */
      
      • 1
    5. ceil() 向上取整

      Math.ceil(4.2);   /* 5 */
      
      • 1
    6. round() 四舍五入

      Math.round(1.1);   /* 1 */
      Math.round(-1.5);   /* -1 默认往大数取值 */
      Math.round(3.5);   /* 4 */
      
      • 1
      • 2
      • 3
    7. abs() 绝对值

      Math.abs('-10');  /* 10 */
      
      • 1
    8. random() 随机数

      Math.random();   /* 0.16164873018534442 返回0-1之间的随机小数 取值范围:0<=X<1 */
      Math.floor(Math.random() * (10 - 1 + 1) + 1);   /* 取值1-10之间的整数,包括1和10 */
      Math.floor(Math.random() * (10 - 1) + 1);   /* 取值1-10之间的整数,不包括10 */
      Math.floor(Math.random() * (max - min) + min);   /* 公式 */
      
      • 1
      • 2
      • 3
      • 4

    Date 对象方法

    1. 基本使用

      /* new Date() 声明一个时间函数 */
      let tinghua = new Date(2020, 10, 01); /* 一种传参格式 Sun Nov 01 2020 00:00:00 GMT+0800 (中国标准时间) */
      let nowDate = new Date(); /* 返回当前的时间 */
      let ting = new Date('2022-06-18 12:15:10'); /* 一种传参格式 Sat Jun 18 2022 12:12:10 GMT+0800 (中国标准时间) */
      let year = ting.getFullYear(); /* year=2022 返回当前时间的年份 */
      let month = ting.getMonth() + 1; /* month=6 返回当前时间的月份(0-11),需要+1操作 */
      let date = ting.getDate(); /* date=18 返回当前时间的日分(1-31) */
      let day = ting.getDay(); /* day=6 返回当前星期X(0-6,0代表星期天) */
      let hours = ting.getHours(); /* hours=12 返回当前时间的小时数(0-23) */
      let minutes = ting.getMinutes(); /* minutes=15 返回当前时间的分钟数(0-59) */
      let seconds = ting.getSeconds(); /* seconds=10 返回当前时间的秒数(0-59) */ 
      let milliseconds = ting.getMilliseconds(); /* milliseconds=0 返回当前时间的毫秒数(0-999) */ 
      let today = ting.toLocaleDateString(); /* today=2022/6/18 返回当前时间的 年/月/日 */ 
      var mytime = ting.toLocaleTimeString(); /* mytime=12:15:10 返回当前时间的 时/分/秒 */
      let monthDay = ting.toLocaleString(); /* monthDay=2022/6/18 12:15:10  返回当前时间的 年/月/日/时/分/秒 */
      
      /* 返回当前时间的时间戳(从1970.01.01开始的毫秒数) */
      let time1 = ting.getTime();   /* time1=1655525530000 */
      let time2 = Date.parse(ting); /* time2=1655525530000 */
      let time3 = ting.valueOf();   /* time3=1655525530000 */
      let time4 = +new Date();      
      let time5 = Date.now();       
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
      • 8
      • 9
      • 10
      • 11
      • 12
      • 13
      • 14
      • 15
      • 16
      • 17
      • 18
      • 19
      • 20
      • 21
      • 22
    2. 实用案例

      1. 获取当前时间(年-月-日)

        function Timer(){
            var now = new Date();
            var year = now.getFullYear(); //得到年份
            var month = now.getMonth(); //得到月份
            var date = now.getDate(); //得到日期
            month = month + 1;
            month = month.toString().padStart(2, "0");
            date = date.toString().padStart(2, "0");
            var defaultDate = `${year}-${month}-${date}`;
            return value=defaultDate
        }
        Timer()
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
      2. 获取一周前的时间(年-月-日)

        function Week(){
            var date = new Date(new Date().getTime()-30*24*3600*1000);
            var seperator1 = "-";
            var month = date.getMonth() + 1<10? "0"+(date.getMonth() + 1):date.getMonth() + 1;
            var strDate = date.getDate()<10? "0" + date.getDate():date.getDate();
            var currentdate = date.getFullYear() + seperator1  + month  + seperator1  + strDate;
            return value=currentdate;
        }
        Week()
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
      3. 计算过去距离当前的时间之间的差,对应显示为某种具体单位

        let value1 = +new Date();
        let value2 = +new Date('2023-06-19 12:15:10');
        let ting = (value2 - value1) / 1000;
        function tinghua() {
            if (ting < 60) {
                let b = parseInt(ting);
                return b + '秒';
            } else if (60 <= ting && ting < 3600) {
                let b = parseInt(ting / 60);
                return b + "分钟";
            } else if (3600 <= ting && ting < (24 * 3600)) {
                let b = parseInt(ting / 60 / 60);
                return b + '小时';
            } else if ((24 * 3600) <= ting && ting < (24 * 3600 * 30)) {
                let b = parseInt(ting / 60 / 60 / 24)
                return b + "天"
            } else if ((24 * 3600 * 30) <= ting && ting < (24 * 3600 * 30 * 12)) {
                let b = parseInt(ting / 60 / 60 / 24 / 30)
                return b + '月'
            } else {
                let b = parseInt(ting / 60 / 60 / 24 / 30 / 12)
                return b + "年"
            }
        }
        console.log(tinghua(ting))  /* 1年 */
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11
        • 12
        • 13
        • 14
        • 15
        • 16
        • 17
        • 18
        • 19
        • 20
        • 21
        • 22
        • 23
        • 24
        • 25
      4. 倒计时

        function countDown(e) {
            let nowDate = +new Date(); /* 当前时间戳 */
            let inputDate = +new Date(e); /* 固定时间戳 */
            let time = (inputDate - nowDate) / 1000; /* 剩余的时间的秒数 */
            let d = parseInt(time / 60 / 60 / 24); /* 天 */
            let h = parseInt(time / 60 / 60 % 24); /* 小时 */
            let m = parseInt(time / 60 % 60); /* 分钟 */
            let s = parseInt(time % 60); /* 秒 */
            return d + '天' + h + '时' + m + '分' + s + '秒'
        }
        console.log(countDown('2022-06-20 12:15:10')) /* 1天16时58分36秒 */
        
        • 1
        • 2
        • 3
        • 4
        • 5
        • 6
        • 7
        • 8
        • 9
        • 10
        • 11

    数组对象方法

    1. isArray() 监测是否为数组

      Array.isArray([1,2,3]);   /* true */ 
      
      • 1
    2. push() 末尾添加一个或多个元素,并修改原数组,返回新数组的长度。

      let arr = [1, 2, 3];
      console.log(arr.push(10));  /*4*/
      console.log(arr);   /*[1,2,3,10]*/
      
      • 1
      • 2
      • 3
    3. pop() 删除数组最后一个元素,无参数,并修改原数组,返回被删除的元素的值。

      let arr = [1, 2, 3];
      console.log(arr.pop()); /* 3 */
      console.log(arr); /* [1,2] */
      
      • 1
      • 2
      • 3
    4. unshift() 向数组的开头添加一个或多个元素,并修改原数组,返回新数组的长度。

      let arr = [1, 2, 3];
      console.log(arr.unshift(12, 24)); /* 5 */
      console.log(arr);  /* [12,24,1,2,3] */
      
      • 1
      • 2
      • 3
    5. shift() 删除数组中第一个元素,无参数,并修改原数组,返回被删除的元素的值。

      let arr = [1, 2, 3, 4];
      console.log(arr.shift()); /* 1 */
      console.log(arr); /* [2,3,4] */
      
      • 1
      • 2
      • 3
    6. reverse() 颠倒数组,无参数,并改变原数组,返回新数组。

      let arr = [1, 2, '张三', 4, 5, 6];
      console.log(arr.reverse()); /* [6,5,4,'张三',2,1] */
      console.log(arr);  /* [6,5,4,'张三',2,1] */
      
      • 1
      • 2
      • 3
    7. sort() 对数组元素进行排序,并改变原数组,返回新数组。

      let arr = [1, 2, 11, '张三', 4, 5, 6];
      console.log(arr.sort()); /* [1, 11, 2, 4, 5, 6, '张三'] */
      console.log(arr);  /* [1, 11, 2, 4, 5, 6, '张三'] */
      arr.sort(function (a, b) {
          // return a - b; /* 升序排序 */
          return b - a; /* 降序排序 */
      })
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6
      • 7
    8. indexOf() 数组中查找指定元素的第一个索引,若存在则返回指定元素的索引,若不存在则返回-1。

      let arr = ['张三', '李四', '王五', '赵四']; /* 下标是number类型 */
      console.log(arr.indexOf('李四'));    /* 1 number */
      console.log(arr.indexOf('李大'));    /* -1 number*/
      
      • 1
      • 2
      • 3
    9. lastIndexOf() 数组中查找指定元素的最后一个索引,若存在则返回指定元素的索引,若不存在则返回-1。

      let arr = ['张三', '李四', '王五', '赵四'];
      console.log(arr.lastIndexOf('赵四')); /* 3 */
      console.log(arr.lastIndexOf('赵二')); /* -1 */
      
      • 1
      • 2
      • 3
    10. toString() 将数组转换成字符串,并用逗号分隔每一项,返回一个字符串。

      let arr = ['囍', '乐', '无', '穷'];
      console.log(arr.toString()); /* 囍,乐,无,穷 */
      console.log(arr);	/* ['囍', '乐', '无', '穷'] */
      
      • 1
      • 2
      • 3
    11. join('分隔符') 将数组中所有元素转换成一个字符串,返回一个字符串。

      let arr = ['囍', '乐', '无', '穷'];
      console.log(arr.join('-')); /* 囍-乐-无-穷 */
      console.log(arr); /* ['囍', '乐', '无', '穷'] */
      
      • 1
      • 2
      • 3
    12. concat() 连接两个或多个数组,并不影响原数组,返回一个新数组。

      let arr1 = ['张三', '李四'];
      let arr2 = ['王五', '赵六'];
      console.log(arr1.concat(arr2)); /* ['张三', '李四', '王五', '赵六'] */
      console.log(arr1); /* ['张三', '李四'] */
      console.log(arr2); /* ['王五', '赵六'] */
      
      • 1
      • 2
      • 3
      • 4
      • 5
    13. slice(start,end) 数组截取(start:开始下标[必选] end:结束下标[可选] ) 不改变原数组。

      let arr = [1,2,3,4,5];
      console.log(arr.slice(0,1)); //[1]
      console.log(arr.slice(2,4)); //[3,4] 包含开始下标不包含结束下标!
      console.log(arr); //[1,2,3,4,5]
      
      • 1
      • 2
      • 3
      • 4
    14. splice(start,del,items) 数组截取 (start:开始下标,del:删除个数,items:多个,追加) 改变原数组

      let arr = [1,2,3,4,5];
      console.log(arr.splice(0,1,0.5)); //[1]
      console.log(arr); //[0.5,2,3,4,5]
      
      • 1
      • 2
      • 3

    字符串对象方法

    1. indexOf() 开头处查找指定元素在字符串中的位置,若存在则返回指定元素的索引,若不存在则返回-1。

      let str = '改革春风吹满地,春风得意马蹄疾';
      console.log(str.indexOf('春'));   /* 2 */
      console.log(str.indexOf('春',3)); /* 8 从索引3处开始查找 */
      
      • 1
      • 2
      • 3
    2. lastIndexOf() 结尾处查找指定元素在字符串中的位置,若存在则返回指定元素的索引,若不存在则返回-1。

      let str = '改革春风吹满地,春风得意马蹄疾';
      console.log(str.lastIndexOf('春'));   /* 8 */
      
      • 1
      • 2
    3. charAt()返回指定索引处的字符。

      let str='ting';
      let _a=str.charAt(1);
      console.log(_a);   //i
      
      • 1
      • 2
      • 3
    4. charCodeAt() 返回指定索引的ASCII码。

      let str='ting';
      let _b=str.charCodeAt(0);
      console.log(_b);   //116
      
      • 1
      • 2
      • 3
    5. str[index] 获取指定位置处的字符。

      let str = 'tinghua';
      console.log(str[5]);   //u
      
      • 1
      • 2
    6. concat() 拼接两个字符串,返回一个新的字符串,原字符串不会发生改变(等效于+,+更常用)。

      let str='123';
      let _f='abc';
      let _g=str.concat(_f);
      console.log(_g);   //123abc
      
      • 1
      • 2
      • 3
      • 4
    7. substr(start,length) 截取字符串,从索引start开始,截取length个字符,将截取的字符串返回,原字符串不会发生改变

      let str='shiqihentinghuahenshuai';
      let _h=str.substr(5,10);
      console.log(_h);   //hentinghua
      
      • 1
      • 2
      • 3
    8. slice(start,end) 截取字符串,从索引start开始,截取到索引end,不包括end。将截取的字符串返回,原字符串不会发生改变,与substring()相似。

      let str='shiqihentinghuahenshuai';
      let _j=str.slice(5,10);
      console.log(_i);   //henti
      
      • 1
      • 2
      • 3
    9. substring(n,m) 截取字符串,从索引n开始,截取到索引m,不包括m。将截取的字符串返回,原字符串不会发生改变,与slice()相似。

      let str='shiqihentinghuahenshuai';
      let _i=str.substring(5,10);
      console.log(_i);   //henti
      
      • 1
      • 2
      • 3
    10. replace(v,i) 替换字符串,将v替换成i

      let str = 'tinghua';
      console.log(str.replace('t', 'y'));   //yinghua
      
      • 1
      • 2
    11. split('分隔符') 字符转数组,使用指定字符分割字符串,返回一个数组,原字符串不发生改变。

      let str='shiqi';
      let _k=str.split("");
      console.log(_k);   //["s", "h", "i", "q", "i"]
      
      • 1
      • 2
      • 3
    12. toLowerCase()将字符串转换为小写

      let str='APC听ADC';
      let _l=str.toLowerCase();
      console.log(_l);   //apc听adc
      
      • 1
      • 2
      • 3
    13. toUpperCase() 将字符串转换为大写

      let str='tinghua';
      let _l=str.toUpperCase();
      console.log(_l);   //TINGHUA
      
      • 1
      • 2
      • 3
    14. toString() 返回字符串对象值

      let arr=['100','200'];
      let ti=arr.toString();
      console.log(ti);   //100,200
      
      • 1
      • 2
      • 3
    15. trim()去除字符串中的首尾空格

      let pink='ting';
      let str=' 222 ';
      let keke='hua';
      let _p=pink+str.trim()+keke;
      console.log(_p);   //ting222hua
      
      • 1
      • 2
      • 3
      • 4
      • 5
    16. toLocaleLowerCase() 根据主机的语言环境把字符串转换为小写,只有几种语言(如土耳其语)具有地方特有的大小写映射

      let str = 'TINGHUA';
      console.log(str.toLocaleLowerCase());  //tinghua
      
      • 1
      • 2
    17. toLocaleUpperCase() 根据主机的语言环境把字符串转换为大写,只有几种语言(如土耳其语)具有地方特有的大小写映射

      let str = 'tinghua';
      console.log(str.toLocaleUpperCase()); //TINGHUA
      
      • 1
      • 2

  • 相关阅读:
    ++运算符重载,--运算符重载
    刷题记录(NC24017 [USACO 2016 Jan S]Angry Cows,NC16462 [NOIP2015]跳石头,NC235254 晾衣服)
    【JVM笔记】导出内存映像(dump)文件
    k8s pod详细讲解
    【mysql】innodb_locks不能存在
    释放计算潜力:SKlearn模型并行训练指南
    ERROR 1698 (28000): Access denied for user ‘root‘@‘localhost‘解决方法
    php foreach变量引用的问题
    《心理学报》的《大学生学习适应量表》能用吗?
    Golang Vue 后台框架 go-admin 从零开始企业级实战视频教程(33 个视频)
  • 原文地址:https://blog.csdn.net/shiqina/article/details/126271239