js中如何根据日期算出星期几

JavaScript022

js中如何根据日期算出星期几,第1张

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <meta http-equiv="X-UA-Compatible" content="ie=edge">

    <title>Document</title>

</head>

<body>

    <input id="y" type="text" placeholder="年" /> <input id="m" type="text" placeholder="月" />

    <nput id="d" type="text" placeholder="日" /> <br /> <input type="button" id="btn" value="计算星期几" /> <input type="text"

        id="w" placeholder="星期几">

    <script>

        var y = document.getElementById('y')

        var m = document.getElementById('m')

        var d = document.getElementById('d')

        var w = document.getElementById('w')

        var btn = document.getElementById('btn')

        btn.onclick = function () {

            var a = ''

            a = y.value + '/' + m.value + '/' + d.value

            var date = new Date(a)

            var week = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]

            w.value = week[date.getDay()]

        }

    </script>

</body>

</script>

</body>

</html>

<script type="text/javascript" language="javascript">

function calc(){

var date=new Date(),str

week=date.getDay()

if(week==0){

str="星期日"

}else if(week==1){

str="星期一"

}else if(week==2){

str="星期二"

}else if(week==3){

str="星期三"

}else if(week==4){

str="星期四"

}else if(week==5){

str="星期五"

}else if(week==6){

str="星期六"

}

alert(str)

}

</script>

注意我用的是alert对话框输出的值,new Date(),括号里面可以填指定日期,格式是:YYYY-MM-DD,注意加引号,如果new Date()后面的括号什么都不填,表示获取当前系统的日期和时间,date.getDay()这方法返回的是一个0到6之间的整数,0表示星期天,1到6表示星期一到星期六

根据你的提问,是选择页面上一个日期,然后判断被选择的日期是星期几么?\x0d\x0a如果是:我给出的js如下:\x0d\x0a// js code\x0d\x0a// code描述:\x0d\x0a// year和date好说,就是你页面选择的实际值。这里要注意month,假如你页面选择的为7月,\x0d\x0a// 这里 的month应当为 7-1;因为在js中,表示月份的数值是从 0 到 11 之间的整数(1月至\x0d\x0a// 12 月)。\x0d\x0a// \x0d\x0a// 代码思路:使用页面选择的年月日创建一个Date对象,然后getDay()就是当前日期在一周中\x0d\x0a// 的哪一天\x0d\x0a// \x0d\x0a// 完整代码加测试代码如下,你根据实际需要改动下就OK了。\x0d\x0avar year = 2011, month = 6, date = 23// month=6表示7月\x0d\x0avar dt = new Date(year, month, date), dt2 = new Date()\x0d\x0avar weekDay = ["星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]\x0d\x0aalert(weekDay[dt.getDay()]+"\r\n"+weekDay[dt2.getDay()])