Obtenha o número da semana do ano em JavaScript
-
Use as funções
getFullYear()
egetDay()
junto com o objetonew Date()
para obter o número da semana da data atual -
Use a estrutura de dados
DateTime
e suas propriedadesweekNumber
de Luxon para obter o número da semana atual do ano
Apresentaremos um método para encontrar o número da semana atual do ano em JavaScript, criando o objeto do construtor new Date()
e as funções como getFullYear()
e getDay()
. Este método encontrará o número total de dias do ano e encontrará o número da semana. Usaremos as funções do objeto Math
como floor()
e ceil()
neste método.
Este artigo também apresentará outro método para obter o número da semana atual em JavaScript usando um wrapper javascript Luxon. Luxon é uma biblioteca de datas e horas em JavaScript. Usaremos a estrutura de dados DateTime
e a propriedade weekNumber
desta biblioteca. Também usaremos a função now
com a estrutura de dados DataTime
.
Também demonstraremos um método para declarar uma variável global em PHP usando a função define()
. Este método é uma forma de declarar uma variável global constante em PHP. O valor da variável não pode ser alterado posteriormente.
Use as funções getFullYear()
e getDay()
junto com o objeto new Date()
para obter o número da semana da data atual
Este método usa o construtor new Date()
e seu objeto junto com as funções como getFullYear()
e getDay()
para obter o número da semana atual do ano. O objeto Date
retorna a data atual. A função getDay()
encontra o dia da semana atual em um valor inteiro. Podemos criar um objeto do construtor Date
para obter a data atual. O objeto chama a função getFullYear()
para obter o início do ano atual. Podemos encontrar o número total de dias desde o início do dia até a hora atual, dividindo a diferença dos dias pelo total de milissegundos em um dia. Podemos usar a função floor()
do objeto Math
para arredondar o valor e obter um número inteiro. Este método finalmente calcula o número da semana do ano, dividindo o número total de dias por sete.
Por exemplo, crie um objeto Date
currentdate
. Crie outra variável, oneJan
, para armazenar o primeiro dia do ano atual. Para isso, crie um novo objeto Date
na variável e chame a função getFullYear()
com o objeto currentdate
como primeiro parâmetro do construtor Date
. Use 0
e 1
como o segundo e o terceiro parâmetros. Subtraia a variável oneJan
de currentdate
e divida por 86400000
. Envolva as operações dentro da função Math.floor()
e atribua-a a uma variável numberOfDays
. Chame a função getDay()
com o objeto currentdate
e adicione a variável numberOfDays
e o valor 1
a ela. Envolva esta operação com a função Math.ceil()
e armazene o resultado na variável result
. Registre a variável no console junto com a variável currentdate
usando interpolação de string.
O exemplo abaixo encontra a data atual e, em seguida, o primeiro dia do ano atual. Os parâmetros 0
e 1
na segunda linha representam o primeiro mês e o primeiro dia do ano atual. Subtraindo oneJan
da currentdate
obtém-se o valor em milissegundos, pelo que o total de milissegundos num dia 86400000
divide a diferença. A função getDay()
retorna o dia na forma inteira começando com 0
, então adicionamos 1
. Portanto, o número da semana atual é calculado.
Código de exemplo:
currentdate = new Date();
var oneJan = new Date(currentdate.getFullYear(), 0, 1);
var numberOfDays = Math.floor((currentdate - oneJan) / (24 * 60 * 60 * 1000));
var result = Math.ceil((currentdate.getDay() + 1 + numberOfDays) / 7);
console.log(
`The week number of the current date (${currentdate}) is ${result}.`);
Resultado:
The week number of the current date (Tue May 25 2021 16:55:53 GMT+0545 (Nepal Time)) is 21.
Use a estrutura de dados DateTime
e suas propriedades weekNumber
de Luxon para obter o número da semana atual do ano
Podemos usar a biblioteca Luxon para obter o número da semana atual do ano com a estrutura de dados DateTime
e a propriedade weeknumber
. O DateTime
consiste em um carimbo de data / hora, um fuso horário e propriedades de configuração. O DateTime
usado com a função now
retornará a data e a hora para o instante atual no fuso horário do sistema. A propriedade weekNumber
acessa o número da semana do ano atual. Podemos usar a função toISO()
para converter o DateTime
para o formato ISO.
Importe o objeto DateTime
de luxon/src/datetime.js
na primeira linha. Não se esqueça de baixar o código-fonte do Luxon. Salve o código-fonte em um arquivo JavaScript e certifique-se de incluir o arquivo usando a tag script
na seção HTML. Chame a função now()
com o objeto DateTime
e, em seguida, chame a propriedade weekNumber
. Atribua a uma variável data
. Em seguida, registre a variável date
no console. Consulte a Documentação do Luxon para saber mais sobre os objetos e propriedades DateTime
.
Exemplo de código:
import DateTime from 'luxon/src/datetime.js'
const date = DateTime.now().weekNumber
console.log(`The current week number is ${date}`)
Resultado:
The current week number is 21
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn