Algumas das maneiras abaixo para diferentes circunstâncias.
Na maioria dos casos normais, a maneira mais simples de acessar o primeiro elemento é
yourArray[0]
mas isso exige que você verifique se [0] realmente existe.
Existem casos do mundo real em que você não se importa com a matriz original e não deseja verificar se o índice existe, deseja obter apenas o primeiro elemento ou a linha indefinida.
Nesse caso, você pode usar o método shift () para obter o primeiro elemento, mas tenha cuidado para que esse método modifique a matriz original (remove o primeiro item e o retorna). Portanto, o comprimento de uma matriz é reduzido em um. Este método pode ser usado em casos em linha onde você só precisa obter o primeiro elemento, mas não se importa com a matriz original.
yourArray.shift()
O importante é saber que os dois acima são apenas uma opção se o seu array começar com um índice [0].
Há casos em que o primeiro elemento foi excluído, por exemplo, exclua yourArray [0] deixando sua matriz com "buracos". Agora o elemento em [0] é simplesmente indefinido, mas você deseja obter o primeiro elemento "existente". Eu já vi muitos casos reais disso.
Portanto, supondo que não tenhamos conhecimento da matriz e da primeira chave (ou sabemos que existem buracos), ainda podemos obter o primeiro elemento.
Você pode usar find () para obter o primeiro elemento.
A vantagem de find () é sua eficiência, pois sai do loop quando o primeiro valor que satisfaz a condição é atingido (mais sobre isso abaixo). (Você pode personalizar a condição para excluir também valores nulos ou outros valores vazios)
var firstItem = yourArray.find(x=>x!==undefined);
Eu também gostaria de incluir filter () aqui como uma opção para "fixar" primeiro a matriz na cópia e depois obter o primeiro elemento, mantendo intacta a matriz original (não modificada).
Outro motivo para incluir filter () aqui é que ele existia antes de find () e muitos programadores já o estavam usando (é o ES5 contra o find () sendo o ES6).
var firstItem = yourArray.filter(x => typeof x!==undefined).shift();
Aviso que filter () não é realmente uma maneira eficiente (filter () percorre todos os elementos) e cria outra matriz. É bom usar em pequenas matrizes, pois o impacto no desempenho seria marginal, mais próximo do uso do forEach, por exemplo.
(Vejo algumas pessoas sugerindo o uso de loop for ... in para obter o primeiro elemento, mas eu recomendaria esse método para ... in não deve ser usado para iterar sobre uma matriz em que a ordem do índice é importante porque não ' Para garantir a ordem, embora você possa argumentar que os navegadores respeitam principalmente a ordem. A propósito, o forEach não resolve o problema, como muitos sugerem, porque você não pode quebrá-lo e ele percorrerá todos os elementos. loop e verificando a chave / valor
Ambos find () e filter () garantem a ordem dos elementos, portanto, são seguros para usar como acima.