[Recomendações relacionadas: tutorial em vídeo de JavaScript, front-end da web]
A seguir, explicaremos o segundo tipo de objeto integrado comum em JS -
o objeto Date é diferente do objeto Math. e pode ser usado diretamente, enquanto o objeto Date é um construtor, portanto, devemos passar pela instanciação do objeto, ou seja, novo antes que ele possa ser usado para lidar com problemas de data e hora no desenvolvimento.
var date=new Date();
O objeto Date pode ser instanciado com ou sem parâmetros. A saída sem parâmetros é a hora padrão do sistema atual. Se houver parâmetros, podemos gerar a hora que queremos exibir. .
Após a instanciação sem parâmetros, será exibida a hora e a data do sistema atual
. saída.
Existem dois tipos de instanciação com parâmetros, nomeadamente tipo numérico e tipo string . A seguir estão exemplos dos dois tipos, respectivamente
1. Instanciação de parâmetros numéricos:
var date=new Date(2021 ,1,18); //Parâmetro numérico console.log(data);
Você pode ver que o parâmetro que inserimos é janeiro, mas o resultado da saída é fevereiro (fevereiro). A saída numérica será um mês maior que o mês que inserimos.
2. Instanciação de parâmetros de string:
var date=new Date('2021-1-18 12:56:00'); //Parâmetros de string console.log(date);
O parâmetro é janeiro e o resultado de saída também é janeiro, portanto, os parâmetros de string são usados com mais frequência do que os parâmetros numéricos.
Já sabemos que o objeto Math possui muitos atributos e métodos que podem ser usados diretamente. O mesmo vale para o objeto Date. métodos usados para formatar o ano, mês e dia:
getFullYear() Produza o ano atual
getMonth() Produza o mês atual (deve-se observar que o mês de saída é 1 a menos que o mês real e 1 deve ser adicionado à saída do mês real)
getDate() Produza o dia atual
getDay() Produz o dia atual da semana (números correspondentes de segunda a domingo: 1 2 3 4 5 6 0)
var Date=new Date(); console.log(Date.getFullYear()); //Sai o ano atual console.log(Date.getMonth() + 1); //O resultado da saída é o mês anterior ao mês atual. o mês atual console .log(Date.getDate()); //Exibe o dia atual da semana console.log(Date.getDay());
Se você quiser que o efeito de saída seja Tuesday, January 18, 2021 , você pode fazer o seguinte
(porque o dia da semana só pode retornar um número, mas por hábito queremos retornar o 'dia da semana', então tratamos o número retornado como um Índice, colocamos Domingo a Sábado em um array, pois Domingo retorna 0, então colocamos Domingo na primeira posição do array, que corresponde ao índice 0)
var arr=['Sunday','Monday ',' Terça-feira','Quarta-feira','Quinta-feira','Sexta-feira','Sábado']; var Data=nova Data(); var ano=Data.getFullYear(); var mês=Data.getMês() + 1; var data=Data.getDate(); var dia=Data.getDay(); console.log(ano + 'ano' + mês + 'mês' + data + 'dia' + arr[dia]);
getHours()
como formatação de anos, meses e dias acima
.Produza a hora atual
getMinutes() Produza o minuto atual
getSeconds() Produza o segundo
var Date=new Date(); console.log(Date.getHours()); //Exibe a hora atual console.log(Date.getMinutes()); //Exibe os minutos atuais console.log(Date.getSeconds()); segundos
Produza horas, minutos e segundos em formato contínuo:
encapsule-os em uma função e use o operador ternário para adicionar 0 a números menores que 10, o que está de acordo com o hábito usual de observar a
função de tempo time() { var hora=nova data(); var h=time.getHours(); h = h<10 ? var m=time.getMinutes(); m = m<10 ?0'+m : m; var s=time.getSeconds(); s = s<10 ? return h+'hora'+m+'minuto'+s+'segundo'; } console.log(tempo());
O número total de milissegundos mencionado aqui refere-se ao número total de milissegundos desde a hora atual até 1º de janeiro de 1970. Existem quatro métodos para expressar
valueOf()
getTime. ()
var data=nova Data(); console.log(date.valueOf()); console.log(date.getTime());
Ou use outro método de escrita simples var date=+new Date()
;console.log
date);
e um novo método adicionado em H5. Este método pode ser obtido sem instanciar um objeto e é mais simples.
console.log
(Date.now());
As contagens regressivas são usadas em muitos lugares durante o desenvolvimento, como Taobao, contagem regressiva Double Eleven Flash Sale da JD.com, etc. subtraia o tempo que definimos. O tempo é suficiente, mas o tempo padrão que obtemos provavelmente será um número negativo após a subtração (como 02-12). Portanto, nosso carimbo de data/hora é valioso. O carimbo de data/hora é o número total de milissegundos que acabamos de mencionar. Para isso, podemos usar o número total definido de milissegundos menos o número total atual de milissegundos. conversões de unidades, você pode obter um caso simples de contagem regressiva. Primeiro, precisamos ser proficientes em lembrar a relação entre as conversões de unidades:
1 segundo = 1000 milissegundos
, dias = segundos/60/60/24
horas = segundos Número/60/60%. 24
minutos=segundos/60%60
segundos=segundos%60Para
segundos que não podem ser divisíveis, podemos usar o método parseInt() para arredondar. Com esse relacionamento de conversão, este caso de contagem regressiva pode ser facilmente realizado com
a função count(time). { var nowtime=+new Date(); //Obter o horário atual var aimtime=+new Date(time); //Obter o horário alvo (horário final) var times=(aimtime-nowtime)/1000; //Obtém a diferença de tempo da contagem regressiva (milissegundos). Divida 1000 para obter os segundos. d<10?'0' +d:d; //Adiciona 0 ao tempo menor que 10 var h=parseInt(times/60/60%24) //Obtém as horas de contagem regressiva h=h<10?'0'+h:h; var m=parseInt(times/60%60) //Obter os minutos da contagem regressiva m=m<10?'0'+m:m; var s=parseInt(times%60) //Obtém a contagem regressiva de segundos s=s<10?'0'+s:s; return d + 'dia' + h + 'hora' + m + 'minuto' + s + 'segundo'; //Retornar contagem regressiva}; alert('A contagem regressiva permanece' + count('2022-1-18 16:30:00')); //Ligue e insira o horário de término do destino
[Recomendações relacionadas: tutorial em vídeo javascript, front-end da web]
O acima é uma compreensão completa. Para obter mais detalhes sobre o objeto Date do JavaScript, preste atenção a outros artigos relacionados na rede de código-fonte para obter mais informações!