Beberapa cara di bawah ini untuk keadaan yang berbeda.
Dalam kebanyakan kasus normal, cara paling sederhana untuk mengakses elemen pertama adalah dengan
yourArray[0]
tetapi ini mengharuskan Anda untuk memeriksa apakah [0] benar-benar ada.
Ada kasus dunia nyata di mana Anda tidak peduli dengan array asli, dan tidak ingin memeriksa apakah indeks ada, Anda hanya ingin mendapatkan elemen pertama atau inline yang tidak ditentukan.
Dalam hal ini, Anda bisa menggunakan metode shift () untuk mendapatkan elemen pertama, tetapi berhati-hatilah karena metode ini memodifikasi array asli (menghapus item pertama dan mengembalikannya). Oleh karena itu panjang array dikurangi satu. Metode ini dapat digunakan dalam kasus inline di mana Anda hanya perlu mendapatkan elemen pertama, tetapi Anda tidak peduli dengan array asli.
yourArray.shift()
Yang penting untuk diketahui adalah bahwa keduanya di atas hanya opsi jika array Anda mulai dengan indeks [0].
Ada kasus-kasus di mana elemen pertama telah dihapus, misalnya dengan, hapus yourrray [0] meninggalkan array Anda dengan "lubang". Sekarang elemen di [0] tidak ditentukan, tetapi Anda ingin mendapatkan elemen "yang ada" pertama. Saya telah melihat banyak kasus dunia nyata ini.
Jadi, dengan asumsi kita tidak memiliki pengetahuan tentang array dan kunci pertama (atau kita tahu ada lubang), kita masih bisa mendapatkan elemen pertama.
Anda dapat menggunakan find () untuk mendapatkan elemen pertama.
Keuntungan dari find () adalah efisiensinya ketika keluar dari loop ketika nilai pertama yang memenuhi kondisi tercapai (lebih lanjut tentang ini di bawah). (Anda dapat menyesuaikan kondisi untuk mengecualikan nol atau nilai kosong lainnya juga)
var firstItem = yourArray.find(x=>x!==undefined);
Saya juga ingin memasukkan filter () di sini sebagai opsi untuk pertama "memperbaiki" array dalam salinan dan kemudian mendapatkan elemen pertama sambil tetap mempertahankan array asli (tidak dimodifikasi).
Alasan lain untuk memasukkan filter () di sini adalah bahwa ada sebelum find () dan banyak programmer telah menggunakannya (itu ES5 terhadap find () menjadi ES6).
var firstItem = yourArray.filter(x => typeof x!==undefined).shift();
Peringatan bahwa filter () sebenarnya bukan cara yang efisien (filter () menjalankan semua elemen) dan membuat array lain. Baik untuk digunakan pada array kecil karena dampak kinerja akan marjinal, lebih dekat dengan menggunakan forEach, misalnya.
(Saya melihat beberapa orang menyarankan untuk menggunakan ... di loop untuk mendapatkan elemen pertama, tapi saya akan merekomendasikan terhadap metode ini untuk ... di tidak boleh digunakan untuk beralih pada Array di mana urutan indeks penting karena urutannya tidak penting . t menjamin pesanan meskipun Anda dapat berdebat browser sebagian besar menghormati pesanan. Namun, karena setiap orang tidak memecahkan masalah karena banyak yang menyarankan karena Anda tidak bisa memecahkannya dan itu akan berjalan melalui semua elemen. Anda akan lebih baik menggunakan sederhana untuk lingkaran dan dengan memeriksa kunci / nilai
Baik find () dan filter () menjamin urutan elemen, jadi aman digunakan seperti di atas.