Функция, чтобы извлекать день недели начиная с даты

Я написал очень простую функцию, чтобы извлекать день недели, которой он соответствует дата, с мыслью это использовать вскоре, чтобы перемещать параметры, извлеченные даты в XML.

Я не понимаю разума под той, которая не выполняет функцию:

window.onload = function(){
    var dia="16";
    var mes="November";
    var anio="2016";
    diaSemana(mes,dia,anio);
},

function diaSemana(dia,mes,anio){
    var dias=["dom", "lun", "mar", "mie", "jue", "vie", "sab"];
    var dt = new Date('"'+mes+' '+dia+', '+anio+' 12:00:00"');
    document.getElementById('div1').innerHTML = "Dia de la semana : " + dias[dt.getUTCDay()];    
};

Предполагается, что он был бы должен включать это в тело моего html, но даже смотря из-за консоли, я понимаю, что функция не выполняет, это html:

<html>
<head>
  <title>JavaScript getUTCDay Method</title>
  <script src="tiempo.js" type="text/javascript"></script>
</head>

<body>
   <div id="div1"></div>
</body>
</html>
4
задан 01.09.2017, 19:55
3 ответа

Я нашел две детали:

  • первый, - порядок, в котором ты перемещаешь его параметры в функцию. Они должны бы быть в следующем порядке: (день, месяц, год) и ты посылаешь их (месяц, день, год).
  • И второй, двойные кавычки не надо в момент создания Date, если бы прощения долга кредитором, это осталось так:
var dt = new Date(mes+' '+dia+', '+anio+' 12:00:00');

Окончательно, код был бы:

function diaSemana(dia,mes,anio){
    var dias=["dom", "lun", "mar", "mie", "jue", "vie", "sab"];
    var dt = new Date(mes+' '+dia+', '+anio+' 12:00:00');
    document.getElementById('div1').innerHTML = "Dia de la semana : " + dias[dt.getUTCDay()];    
};

var dia="16";
var mes="November";
var anio="2016";
diaSemana(dia, mes,anio);
<div id="div1"></div>
3
ответ дан 24.11.2019, 12:35

Ненужные кавычки и часы, изменись:

var dt = new Date('"'+mes+' '+dia+', '+anio+' 12:00:00"');

из-за

var dt = new Date(mes+' '+dia+', '+anio);

, Введенные Вышедшие

<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>
<script>
    var mes = "November";
    var dia = "16";
    var anio = "2016";
    var dias=["dom", "lun", "mar", "mie", "jue", "vie", "sab"];
    var dt = new Date(mes+' '+dia+', '+anio);
    var text = "Dia de la semana : " + dias[dt.getUTCDay()];
    document.getElementById("demo").innerHTML = text;
</script>

</body>
</html>

:

Dia de la semana : mie
0
ответ дан 24.11.2019, 12:35
let days = ['Lunes','Martes','Miércoles', 'Jueves', 'Viernes', 'Sábado', 'Domingo'];
let d = new Date('02/15/1989'); //Miércoles
console.log(days[d.getUTCDay()-1]);

Проблема состоит в том, что ответ getUTCDay() - dГ - в недели. а именно

  • Понедельников = 1
  • Вторник = 2
  • MiГ©rcoles = 3

и т.д.... У

и Array есть индекс 0.

0
ответ дан 24.11.2019, 12:35