zoukankan      html  css  js  c++  java
  • 【JS新手教程】JS获取当前星期几的几种方法

    该文通过获取星期几的几种方法,介绍JS里的数组,判断,和字符串截取,可以当作新手教程看,小白也看的懂。
    获取星期几,可通过Date()对象的getDay()获取,获取的是一个数字,对应的是0,1,2,3,4,5,6。
    0代表的是星期天,后面6个自然数,代码该星期,如1代表星期一,6代表星期六。

    描述:(代码见描述后面)
    第一个方法:定义一个数组,然后取某一个数组的值。
    JS中定义一个带初始值的数组的写法,可以这么写 var 数组名=new Array(第一个数值,第二个数值.......);
    获取数值中的某个值的方法,就是 数组名[需要取的数值的索引]索引是从0开始的,往后0,1,2,3,4,5.......
    例如:数组名[0]就是取该数组的第一个数值,数组名[1]就是取该数组的第二个数值。
    getDay()获取的是0123456这样的,所以可以直接对应下标设置,数组的第一个就是数组名[0]星期天,数组名[1]是星期一,("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六")。这样直接用getDay()的值做下标就可以了,不需要对该值进行加减什么的处理,直接对应。

    第二个方法:JS中的判断if else if方法。
    JS中的判断方法,if(条件成立)执行某段代码,else if(前面的条件不成立,这个条件成立)执行这段代码.......
    如下面的代码,可以这样用人的语言描述:
    ,判断day这个变量的值是否是0,那么给wstr这个变量赋值为‘星期日’。
    否则,就再判断是否是1,如果是1,那么给wstr这个变量赋值为‘星期一。
    如果不是,再判断.......
    如此,不断判断。当判断某个条件成立时,才不再继续走else支线判断。
    最少判断一次,就是等于0的时候,直接等于星期日,不再走支线;最多会判断7次,前面判断都不成立,走的额else支线,直到最后等于6,赋值星期六。

    第三个方法:JS中的switch case方法。
    JS中的判断方法,switch(某个值)case(值1):执行的语句;break...........
    这个和第二个差不多,都是判断后使用哪个,这个可以看做直接对应,case中和switch中的值一致,就会走该case里的执行的语句,break跳出这个判断。
    例如,该文中的方法,day的值可能为0,1,2,3,4,5,6,然后把所有可能的值分别写出对应的case,按值对应执行哪个语句。

    第四种方法:JS中的charAt()方法,截取某个字符。
    格式是:需要截取的字符串.charAt(索引)
    如上所说,计算机语言中的索引都是从0开始的,例如,该文中方法,"日一二三四五六"就是一个字符串,有七个字符,索引从0开始,到6,由于day是0到6,所以可以直接用day本身的值作为下标,把需要的字符逐个按照下标排序。
    这样就能取到当前星期的数字,前面加上字符“星期”,组成星期一。
    注意:在JS中 ,没有字符型数据,只有字符串型的,逐个截取后的实际是长度为1的字符串,也就是一个字符的字符串,但是它是字符串类型的,记得在C#等中,字符型和字符串是不同的类型。

    代码

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>WEB打印控件LODOP</title>
    <script language="javascript" src="LodopFuncs.js"></script>
    </head>
    <body>
    输入寄出地址 <input type="text" id="T1" size="15"><br>  
    输入收货地址 <input type="text" id="T2" size="15"><br>
    <a href="javascript:prn1_preview()">打印预览</a><br>
    <script language="javascript" type="text/javascript"> 
            var LODOP; //声明为全局变量
    function RetnW() {//JS的数组
            var date=new Date(); 
            var day=date.getDay();
            var weeks=new Array("星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六");
            var week=weeks[day];
            return week
        }
    function RetnWF2() {//JS判断的if elseif方法
           var wstr="";  
           var date=new Date(); 
           var day=date.getDay();
           if (day==0){wstr="星期日";} 
           else if(day==1){wstr="星期一";} 
           else if(day==2){wstr="星期二";}
           else if(day==3){wstr="星期三";} 
           else if(day==4){wstr="星期四";} 
           else if(day==5){wstr="星期五";} 
           else if(day==6){wstr="星期六";} 
           return wstr;
        }
    function RetnWF3() {//JS判断的switch方法
           var wstr="";  
           var date=new Date(); 
           var day=date.getDay();
           switch (day) {  
           case 0:wstr="星期日";break;
           case 1:wstr="星期一";break; 
           case 2:wstr="星期二";break;
           case 3:wstr="星期三";break; 
           case 4:wstr="星期四";break; 
           case 5:wstr="星期五";break;
           case 6:wstr="星期六";break; 
           }  
            return wstr;
        }
    function RetnWF4() {//JS判断的字符串截取方法
            var date=new Date(); 
            var day=date.getDay();
            var wstr="星期"+"日一二三四五六".charAt(day); 
            //var wstr="星期"+"日一二三四五六".charAt(new Date().getDay());  
            return wstr
        }
        function prn1_preview() {
            LODOP=getLodop(); 
            var W1=RetnW();var W2=RetnWF2();var W3=RetnWF3();var W4=RetnWF4();
            LODOP.PRINT_INIT("");        
            LODOP.ADD_PRINT_TEXT(28,41,77,22,"寄出地址:");
            LODOP.ADD_PRINT_TEXT(28,100,200,22,document.getElementById("T1").value);
            LODOP.ADD_PRINT_TEXT(77,41,77,22,"收货地址:");
            LODOP.ADD_PRINT_TEXT(77,100,200,22,document.getElementById("T2").value);
            LODOP.ADD_PRINT_TEXT(111,41,410,20,"这是根据day的数值做下标,取的数组中的某个值:打印是在"+W1);
            LODOP.ADD_PRINT_TEXT(139,40,410,20,"这是用if 和else if判断,根据day等于哪个取的值:打印是在"+W2);
            LODOP.ADD_PRINT_TEXT(169,39,410,20,"这是用switch,根据daye的值,使用哪个值:打印是在"+W3);
            LODOP.ADD_PRINT_TEXT(200,38,410,20,"这是根据day的值,charAt截取一个字符串的某个字:打印是在"+W4);
            //LODOP.PRINT_DESIGN();
            LODOP.PREVIEW();
        };
    </script> 
    </body>

    图示

  • 相关阅读:
    [转]Spring+SpringMVC+MyBatis+easyUI整合基础篇(一)项目简述及技术选型介绍
    推荐一个windows系统的下载和安装的网址:win7之家
    [转]vue调试工具vue-devtools安装及使用(亲测有效,望采纳)
    [转]Error: Node Sass does not yet support your current environment: Windows 64-bit
    [转]升级/重装win10系统--提示无法验证密钥的解决办法
    Sólo le pido a Dios
    Composer 语法中的^符号意思
    服务器上传的目录索引一定要关闭
    [SAP] CloudWatch
    [SAA] 32. Data Engineering
  • 原文地址:https://www.cnblogs.com/huaxie/p/10723804.html
Copyright © 2011-2022 走看看