Pessoal, no vídeo, não é exibido ou comentado sobre datas. Mas caso houvesse a necessidade de obter uma data que foi selecionada, como seria? Tentei implementar, porém, não entendi como funciona em relação sobre. Mesmo se consigo obter uma data que eu selecionei e depois tento formatá-la usando o toLocaleToString(), o dia continua alterando
...
//Exemplo de data: 01/10/2020
var date = form.dateCollect.value;
const newDate = new Date(date);
var day = newDate.getDay(); // ou newDate.getDay().toLocaleToString()
console.log(day); // o dia sai como 03
Temos um tipo para data e dentro do javascript poderíamos pegar:
console.log(date.valueAsDate)
E dessa forma já temos na formatação correta :)
2 . Um pouco chata pois tem que converter
Para essa daqui é interessante entender um pouco mais sobre os recursos avançados do javascript:
const resultado = date.value.split('/');
Aqui eu estou pegando o em formato textual e pedindo para ele dividir em pedaços sempre que encontrar uma /, então:
//Exemplo de data: 01/10/2020
data.split('/')
[ "01", "10", "2020" ]
E aqui podemos até utilizar um recurso novo do javascript que é o Destructuring Assignment, de forma que cada posição do array eu consigo extrair para uma variável, veja:
const [ dia, mes, ano ] = date.value.split('/')
Então a variável dia equivale ao 01, mes ao 10 e ano 2020
Agora que temos a data separada, o que podemos fazer é criar um objeto do tipo data, lembrando do formato:
ano
mes: Aqui é necessário sempre subtrair 1, pois Janeiro é o mês 0
dia
const [ dia, mes, ano ] = date.value.split('/')
const data = new Date( ano, Number(mes) - 1, dia);
// Equivale a:
const resultado = date.value.split('/');
const data = new Date( resultado[2], Number(resultado[1]) - 1, resultado[0])
Dessa forma também teremos um objeto do tipo Data construído da maneira correta :)
Nos cursos de Javascript Avançado, inclusive é trabalhado um pouco com essa questão de datas e como criar um formatador :)
Mas sinceramente a primeira maneira é a mais prática para essa questão de input
Se quiser saber mais sobre o Destructuring:
E o curso que tem um campo de datas e esse processo de conversão: