JS。 Date对象和String类型

Math对象:

2.1 取整

  • parseInt 取整 舍弃小数部分

  • Math.floor 向下取整 舍弃小数部分

  • Math.ceil 向上取整 有小数就进位

  • Math.round 四舍五入

2.2 数学方法

  • Math.max(数值1,数值2,数值3.....) 找序列中最大的值

  • Math.min(数值1,数值2,数值3.....) 找序列中最小的值

  • Math.abs 取绝对值

  • Math.sqrt 开根号

  • Math.pow(num,n) 次方幂 num底数 n 次方幂

2.3 随机数

  • Math.random() 随机生成0-1之间的数据 包括0不包括1

  • 随机生成min到max之间的整数

    • Math.floor( Math.random() * (max - min + 1) + min )

3.时间对象Date

==月份单词==

January:一月     February:二月      March:三月       April:四月 
May:五月      June:六月    July:七月    August:八月   
September:九月    October:十月    November:十一月      December:十二月

3.1 创建时间对象

  • 创建当前时间对象

  • <script>
            // 1.创建当前这一时刻的时间对象
            var oDate =   new Date();
            console.log(oDate);// Thu Sep 01 2022 09:57:06 GMT+0800 (中国标准时间)

            // 2.创建每秒的时间
            setInterval(function(){
                var a = new Date();
                // console.log(a,"现在时刻");
            },1000) 
        </script>

  • 创建自定义时间

   //a. 自定义的时间是一个字符串
        var sDate =  new Date("2023,1,1,12:00:00");
        var sDate =  new Date("2023 1 1 12:00:00");
        var sDate =  new Date("2023/1/1 12:00:00");
        var sDate =  new Date("2023-1-1 12:00:00");
        console.log(sDate);//Sun Jan 01 2023 12:00:00 GMT+0800 (中国标准时间)

        //b. 时间分开接受参数  创建2023年10月1日  12:00:00的时间
        // 问题  想创建10月   但是结果出来的是11月  
        // 分析原因: 月份是从0开始的   0-1月   10-11月
        var aDate = new Date(2023,9,1,12,0,0)  //想创建10月  就给9
        console.log(aDate);// Sun Oct 01 2023 12:00:00 GMT+0800 (中国标准时间)

        var bDate =  new Date(2023,9,1);
        console.log(bDate);// Sun Oct 01 2023 00:00:00 GMT+0800 (中国标准时间)

3.2 获取时间

  • 获取特定格式的时间

 var  oDate = new Date();
        // 年月日  时分秒  日期
        console.log(oDate);//Thu Sep 01 2022 10:39:02 GMT+0800 (中国标准时间)

        // 1.获取特定格式的时间    年  月  日
        console.log(oDate.toDateString());//Thu Sep 01 2022
        console.log(oDate.toLocaleDateString());//2022/9/1

        // 2.获取特定格式的时间    时  分  秒
        console.log(oDate.toTimeString());//10:41:30 GMT+0800 (中国标准时间)
        console.log(oDate.toLocaleTimeString());// 10:42:02

  • 获取单个时间

 // 3.获取单个时间
        // 年
        console.log(oDate.getFullYear());//2022\
        // 月  月份是从0开始  0----1月份   8----9月份
        console.log(oDate.getMonth() + 1);//9
        // 日
        console.log(oDate.getDate());// 1
        // 时
        console.log(oDate.getHours());
        // 分钟
        console.log(oDate.getMinutes());
        // 秒
        console.log(oDate.getSeconds());
        // 星期  ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]
        console.log(oDate.getDay());//4

  • 获取时间戳

  •  // 4.获取现在的时间戳   1970年1月1日0:0:0 到现在时刻的毫秒
            console.log(oDate.getTime())

            // 5.获取未来时间的时间戳      1970年1月1日0:0:0 到2023年10月1日的毫秒
            var sDate = new Date("2023,10,1")  
            console.log(sDate);//Sun Oct 01 2023 00:00:00 GMT+0800 (中国标准时间)
            console.log(sDate.getTime());//1696089600000

3.3 倒计时

  • 实现思路:倒计时 未来时间的时间戳-现在时间的时间戳 = 差值(毫秒单位)

  • ==注意==

    • 1天 24 * 60 * 60 86400s

    • 1时 60*60 3600s

    • 1分 60 60s

<script>
        auto();
        setInterval(auto, 1000)
        function auto() {
            // 1.倒计时  未来时间的时间戳-现在时间的时间戳 = 差值(毫秒单位)
            // 创建未来时间
            var futureDate = new Date("2022,9,3");
            // 创建现在时间
            var currentDate = new Date();
            // 时间差  毫秒单位转成秒  1s  = 1000ms
            var time = futureDate.getTime() - currentDate.getTime();
            time = parseInt(time / 1000);
            // console.log(time);// 131680
            // 将time 转为 天 时 分 秒
            /* 
                1天  24*60*60  86400s
                1时  60*60     3600s
                1分  60        60s
            */
            var t = parseInt(time / 86400);
            console.log(t);
            var h = parseInt((time % 86400) / 3600);
            console.log(h);
            var m = parseInt((time % 86400 % 3600) / 60);
            console.log(m);
            var s = time % 60;
            console.log(s);
            // 将结果显示在页面上
            document.body.innerHTML = "还剩余" + suppleZero(t) + "天" + suppleZero(h) + "时" + suppleZero(m) + "分" + suppleZero(s) + "秒"

        }


        function suppleZero(num) {
            return num < 10 ? "0" + num : num;
        }
    </script>

4.字符串对象

4.1 创建字符串对象

  • 字面量创建

 // 1.字面量创建 (包装类对象 是使用字符串的方法的之后 会暂时将自己伪装成一个对象)
        var str1 = "0711web";
        console.log(str1);//0711web
        console.log(typeof str1);// string
        console.log(str1.length);// 7

  • new关键字创建

 // 2.new 关键字创建
        var str2 =  new String("0711web");
        console.log(str2);//String {'0711web'}
        console.log(typeof str2);// object
        console.log(str2.length);//7

4.2 字符串的方法

length

  • 获取字符串长度

charAt

  • 语法:str.charAt(下标)

  • 作用 :获取下标对应的字符

  •    // length
            console.log(str1.length);//7
            // charAt(下标)
            console.log(str1.charAt(6));//b

charCodeAt

  • 语法:str.charCodeAt(下标)

  • 作用 :获取下标对应的字符编码

  •  // charCodeAt(下标)  "A"----65  "a"----97   "0"----48
            console.log(str1.charCodeAt(0));//48

indexOf

==从左往右查找==

  • 语法:str.indexOf(searchValue,index)

  • 作用 :查询一个字符串在另一个字符串中首次出现的位置 如果出现则是返回该字符串的下标位置 没有找到则是返回-1

  • 参数

    • searchValue:必需参数 需要查询的字符串

    • index:可选值 开始查找的位置 默认是从下标0开始查找

    •  // indexof
              var str2 = "webuiwebuiwebui";
              var s = "ui";
              console.log(str2.indexOf(s));// 3   ui的u的下标

              var s1 = "java"
              console.log(str2.indexOf(s1));// -1 

              var s3 = "ui";
              console.log(str2.indexOf(s3,5));//8 

              var str3 = "uiwebui";
              var s4 = "ui";
              console.log(str3.indexOf(s4));//0

lastindexof

==从右往左查找==

  • 语法 :str.lastindexOf(searchvalue,index)

  • 作用 :从字符串后面开始往前查找第一次出现的目标位置 如果找到返回正常的索引值 如果找不到则是返回-1

  • 参数

    • searchValue: 必需参数 需要查询的字符串

    • index:可选值 开始查找的位置 默认是从str.length-1开始查找

           // lastindexOf  了解
            var  str = "webuiwebjava";
            var  s1 = "web"
            console.log(str.lastIndexOf(s1));//5
            console.log(str.lastIndexOf(s1,3));//0

字符串截取方法

substring

  • 语法:str.substring(start,end)

  • 作用:截取介于两个指定下标之间的字符 包括start不包括end

  • 参数

    • start 开始截取的下标 可选值 默认是0

    • end 结束截取的下标 可选值 默认是str.length

    •  // 1.substring(start,end)
              var str1 = "webuiwebuiwebui";
              console.log(str1.substring());// webuiwebuiwebui
              console.log(str1.substring(2));// buiwebuiwebui
              console.log(str1.substring(2,4));// bu    

slice

  • 语法:str.slice(start,end)

  • 作用:截取介于两个指定下标之间的字符 包括start不包括end

  • 参数

    • start 开始截取的下标 可选值 默认是0

    • end 结束截取的下标 可选值 默认是str.length

 // 2.slice(start,end)
        var str2 = "webuiwebuiwebui";
        console.log(str2.slice());//webuiwebuiwebui
        console.log(str2.slice(3));//uiwebuiwebui
        console.log(str2.slice(3,6));//uiw      

slice和substring的区别

  • substring 会自动调整位置 slice不会自动调整位置

  • substring 碰见负数会默认为0 slice碰见负数认为倒数第几个

  •   // 3.区别
            var str3 = "abcdefg";
            console.log(str3.substring(2,0));//ab  自动调整位置 (0,2)
            console.log(str3.slice(2,0));//" " 不会自动调整位置

            console.log(str3.substring(2,-1));//ab   负数会默认为是0
            console.log(str3.slice(2,-1));//cdef     负数默认为倒数第几个

            var str4 = ["[object Object]","[object Function]","[object Array]"];
            console.log(str4[0].slice(8,-1));//Object
            console.log(str4[1].slice(8,-1));//Function
            console.log(str4[2].slice(8,-1));//Array
            for(var i = 0;i<str4.length;i++){
                console.log(str4[i].slice(8,-1))
            }      

substr

  • 语法 str.substr(start,length)

  • 作用:从哪开始截取 截取几个

 var str = "110123200010010987";
 console.log(str.substr(6,4))// 2000

大小写转换

toUpperCase

  • 语法 str.toUpperCase() 转大写

toLowerCase

  • 语法 str.toLowerCase() 转小写

  • 验证码不区分大小写

 <script>
        var str = "ABcdeff";
        console.log(str.toUpperCase());"ABCDEFF"; //转大写
        console.log(str.toLowerCase());"abcdeff"; //转小写
        // 验证码不区分大小写
        var str1 = "OpXy";  //系统给的验证码
        var  str2 = "apxy";  //用户输入的验证码
        if(str1.toLowerCase() == str2.toLowerCase()){   
            console.log("用户输入正确")
        }
    </script>

replace

  • 语法 str.replace(searchValue,replaceValue)

  • 作用 替换字符串中的某个字符 返回一个新的字符串 默认一次只能替换一个

  • 参数

    • searchValue 必需 将要被替换的字符串

    • replaceValue 必需 替换的字符

// replace(searchValue,replaceValue)
        var str = "Webuiwebuiwebui";
        var newStr =  str.replace("web","java");//将web字符串替换成java
        console.log(newStr,str)

trim

  • 语法 str.trim()

  • 作用 去除字符串的首尾空格

       // trim 去除字符串的首尾空格
        var  str = "  webui  webui   ";
        console.log(str.trim());   

split

  • 语法:str.split(分割标识)

  • 作用:将字符串根据特定标识分割成数组

    // split 将字符串根据特定标识分割成数组
        var date = "2022-9-1";//  [2022,9,1]
        var newDate =  date.split("-");
        console.log(newDate,date);// ['2022', '9', '1'] '2022-9-1'
        var name = "澄邈、德泽、海超"
        console.log(name.split("、"));// ['澄邈', '德泽', '海超']    

回答: 你可以使用Date对象的getFullYear()方法来获取年份。在JavaScript中,可以通过创建一个Date对象,然后使用getFullYear()方法来获取当前年份。例如,你可以使用以下代码来获取当前操作系统的年份: var a = new Date(); var Y = a.getFullYear(); console.log(Y); 这将打印出当前的年份。\[1\]在Java中,你可以使用Calendar类来获取年份。可以使用以下代码来获取指定日期的年份: DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH); String sToTimestamp = "2005-8-18"; try { java.util.Date timeDate = dateFormat.parse(sToTimestamp); Calendar calendar = Calendar.getInstance(); calendar.setTime(timeDate); int year = calendar.get(Calendar.YEAR); System.out.println("year:" + year); } catch (Exception e) { System.out.println(e.toString()); } 这将打印出指定日期的年份。\[2\]另外,在Java中,你也可以使用SimpleDateFormat类来获取当前日期的年份。例如,你可以使用以下代码来获取当前日期的年份: String\[\] strNow1 = new SimpleDateFormat("yyyy-MM-dd").format(new Date()).toString().split("-"); System.out.println(strNow1\[0\]); 这将打印出当前的年份。\[3\]希望这些信息对你有帮助! #### 引用[.reference_title] - *1* [JavaScript:获取Date对象中的年份,月份,日期,小时,分钟,秒等](https://blog.csdn.net/weixin_53542481/article/details/113666021)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [java-从date中获取年份](https://blog.csdn.net/xie__jin__cheng/article/details/108665474)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Date类型获取年月日](https://blog.csdn.net/weixin_43167662/article/details/118960449)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值