Array menyediakan begitu banyak metode. Untuk mempermudah, pada bab ini metode dibagi menjadi beberapa kelompok Show Kita sudah mengetahui metode yang menambah dan menghapus item dari awal atau akhir array
Berikut adalah beberapa metode lainnya Bagaimana cara menghapus elemen dari array? Array adalah objek, jadi kita bisa mencoba menggunakan 8
Elemen telah dihapus, tetapi array masih memiliki 3 elemen, kita dapat melihat bahwa 9Itu wajar, karena _0 menghapus nilai berdasarkan 1. Itulah yang dia lakukan. Tidak ada masalah untuk objek. Tapi untuk array kita biasanya ingin elemen yang tersisa bergeser dan mengisi ruang yang telah dikosongkan sebelumnya. Kami ingin memiliki array yang lebih pendek sekarangJadi, metode khusus harus digunakan Metode arr. splice(start) adalah fungsi serbaguna untuk array. Sambatan dapat melakukan banyak hal. menyisipkan, menghapus dan mengganti elemen Sintaksnya adalah _Mulai dari posisi 2. hapus elemen 3 lalu masukkan 4 di tempatnya masing-masing. Mengembalikan array yang diurutkan berdasarkan elemen yang dihapusMetode ini mudah dipahami melalui contoh-contoh Mari kita mulai dengan eliminasi
Mudah, bukan? Pada contoh berikutnya kita menghapus 3 elemen dan menggantinya dengan 2 elemen lainnya
Di sini kita dapat melihat bahwa _7 mengembalikan array yang berisi elemen yang dihapus
Metode _7 juga dapat menyisipkan elemen tanpa menghapus elemen yang sebelumnya ada. Untuk itu kita perlu mengatur _3 sampai 0
Indeks numerik negatif diperbolehkan Di sini dan dalam metode array lainnya, indeks negatif (numerik) diperbolehkan. Indeks menentukan posisi akhir array, seperti ini
Metode arr. slice lebih sederhana dari metode serupa sebelumnya yaitu 1Sintaksnya adalah
Metode ini mengembalikan array baru dari salinan semua item dari indeks 2 ke 3 (indeks 3 tidak termasuk). Baik 2 dan 3 bisa negatif, dalam hal ini posisi akhir array telah diasumsikan/diperkirakanMirip dengan metode string _7, tetapi membuat subarray alih-alih substringSebagai contoh
Kami juga dapat memanggil metode tanpa argumen. 8 membuat salinan dari 9. Metode seperti itu sering digunakan untuk mendapatkan salinan untuk transformasi lebih lanjut tanpa mempengaruhi larik aslinyaMetode arr. concat membuat larik baru yang sudah menyertakan nilai dari larik lain serta item tambahan Sintaksnya adalah sebagai berikut
Sintaks menerima sejumlah argumen - bisa berupa array atau nilai Hasilnya adalah larik yang berisi item dari _9, lalu 1, 2, dan seterusnyaJika argumen 3 adalah sebuah array, maka semua elemennya akan disalin. Jika tidak, argumen itu sendiri akan disalinSebagai contoh _0Biasanya, metode ini hanya menyalin elemen dari array. Objek lain, meskipun objek tersebut terlihat seperti array, akan ditambahkan secara keseluruhan _1...Tetapi jika objek mirip-array memiliki properti khusus 4, maka objek diperlakukan sebagai larik dengan 5. elemen ditambahkan _2Metode arr. forEach memungkinkan kita menjalankan fungsi untuk setiap elemen dalam array Sintaks _3Misalnya, kode berikut menampilkan setiap elemen dalam larik _4Dan kode ini lebih detail tentang posisi elemen-elemen tersebut di dalam array yang ditargetkan _5Hasil dari fungsi (jika mengembalikan sesuatu) dibuang dan diabaikan Sekarang mari kita bahas metode yang bertugas mencari di dalam array Metode arr. indexOf, arr. lastIndexOf dan arr. termasuk memiliki sintaks yang sama dan pada dasarnya keduanya menjalankan fungsi yang sama memiliki sintaks yang sama, tetapi untuk mengoperasikannya perlu diarahkan ke item bukan karakter
Sebagai contoh _6Perlu dicatat bahwa metode ini menggunakan perbandingan 5. Jadi, jika kita mencari _6, metode ini akan secara akurat menemukan 6 dan bukan nolJika kita ingin mengecek join, dan tidak ingin mengetahui indeks yang tepat, maka disarankan untuk menggunakan 8Juga, perbedaan kecil dari 9 adalah bahwa metode ini menangani 0 persis, tidak seperti 1 _7Bayangkan kita memiliki array objek. Bagaimana kita menemukan objek dengan kondisi tertentu? Inilah metode arr. find(fn) yang dapat dengan mudah digunakan Sintaks _8Fungsi dipanggil untuk elemen-elemen dalam array, satu demi satu
Jika fungsi mengembalikan 4, pencarian dihentikan, maka 7 akan dikembalikan. Jika tidak ada yang ditemukan, _7 dikembalikanMisalnya, kami memiliki larik yang berisi elemen pengguna, setiap pengguna memiliki bidang 8 dan 9. Mari temukan pengguna dengan _00 _9Dalam kehidupan nyata, array yang berisi objek adalah hal biasa, jadi metode 01 sangat bergunaIngat bahwa contoh yang kami berikan untuk menemukan ( _01) fungsi 03 hanya dengan satu argumen. Ini adalah hal yang umum, argumen lain untuk fungsi lain jarang digunakanMetode arr. findIndex pada dasarnya sama, tetapi mengembalikan indeks tempat elemen ditemukan alih-alih elemen itu sendiri dan mengembalikan 9 ketika tidak ada yang ditemukanMetode _01 mencari satu elemen (pertama) yang akan membuat fungsi kembali 4Jika ada banyak elemen seperti itu, kita bisa menggunakan arr. filter(fn) Sintaksnya mirip dengan 01, tetapi 08 mengembalikan larik yang berisi elemen yang cocok 0Sebagai contoh 1Mari beralih ke metode yang mengubah dan mengatur ulang array Metode arr. peta adalah salah satu metode yang paling berguna dan paling sering digunakan Metode ini memanggil fungsi untuk setiap elemen dalam larik dan mengembalikan hasilnya dalam bentuk larik Sintaksnya adalah 2Misalnya, di sini kita mengubah setiap elemen dengan panjang string elemen 3Panggilan arr. sort() mengurutkan array dalam wadah, mengubah urutan elemennya Metode ini juga mengembalikan array yang diurutkan, tetapi nilai yang dikembalikan biasanya diabaikan, mengingat 9 sendiri telah dimodifikasi/diubahSebagai contoh 4Sadarkah Anda akan keanehan hasil di atas? Urutannya menjadi _10. Tidak benar. Tapi kenapa begitu?Item pada dasarnya diurutkan sebagai string Secara harfiah, semua elemen diubah menjadi string untuk perbandingan. Sedangkan pada string, ada penyortiran leksikografis dan memang benar 11Untuk menggunakan urutan tata letak kita sendiri, kita perlu meneruskan fungsi sebagai argumen ke 12Fungsi harus membandingkan dua nilai variabel dan mengembalikan (hasilnya) 5Contoh, untuk mengurutkan elemen sebagai angka 6Sekarang metode yang disebutkan berfungsi seperti yang diinginkan Mari kita berhenti sejenak dan memikirkan apa yang terjadi. 9 bisa berupa array yang berisi apa saja, bukan? . Kami memiliki sekelompok beberapa item. Untuk mengurutkannya, kita memerlukan fungsi pengurutan yang mengetahui cara membandingkan elemen. Pengaturan awal adalah urutan stringMetode _14 mengimplementasikan algoritma pengurutan umum. Kami tidak benar-benar perlu mengetahui cara kerja algoritme (pengurutan cepat yang dioptimalkan setiap saat). Algoritme akan melalui array, membandingkan elemen menggunakan fungsi yang diberikan dan menyusun ulang elemen, yang perlu kita lakukan adalah memberikan 15 yang akan melakukan operasi perbandinganOmong-omong, jika kita ingin mengetahui elemen mana yang dibandingkan – beri peringatan saja 7Algoritme dapat membandingkan suatu elemen dengan banyak elemen lain dalam proses ini, tetapi algoritme akan mencoba membuat perbandingan sesedikit mungkin Fungsi perbandingan dapat mengembalikan angka apa pun Sebenarnya, fungsi perbandingan hanya perlu mengembalikan bilangan positif untuk menyatakan "lebih besar (dari)" dan bilangan negatif untuk menyatakan "lebih kecil (dari)" Ini membuat penulisan fungsi lebih pendek 8Fungsi panah terbaik Ingat fungsi panah? _9Fungsi ini berfungsi sebaik metode versi yang lebih panjang Metode arr. terbalik membalik urutan elemen di ________21______9 Sebagai contoh _0Metode ini juga mengembalikan array _9 setelah proses pembalikanIni adalah situasi dunia nyata. Kami menulis aplikasi perpesanan, dan orang tersebut memasukkan daftar penerima yang dipisahkan dengan koma, antara lain. _18. Tetapi bagi kami sebuah array yang berisi nama akan jauh lebih baik daripada sebuah string. Jadi bagaimana cara mendapatkannya?Metode str. split(delim) melakukan persis seperti yang dijelaskan di atas. Metode ini memisahkan string menjadi array dengan pembatas (separator) 19Dalam contoh berikut, kami memisahkan elemen dengan koma diikuti dengan spasi _1Metode 20 memiliki argumen numerik opsional kedua - batas panjang array. Jika batas diberikan, maka elemen tambahan (melebihi batas panjang array yang diberikan) akan diabaikan. Dalam praktiknya, ini jarang digunakan _2Dibagi menjadi huruf Memanggil _21 dengan 22 kosong akan membagi string menjadi array yang berisi huruf _3Panggilan arr. join(lem) melakukan pembalikan ke 20. Panggilan ini membuat string _9 item yang digabungkan dengan 25 (lem) di antara itemSebagai contoh _4Ketika kita perlu mengulang array – kita dapat menggunakan 26, 27 atau 28Saat kami perlu mengulang dan mengembalikan data setiap elemen – kami menggunakan 29Metode arr. kurangi dan metode arr. reduceRight juga termasuk dalam kelompok metode, tetapi sedikit lebih rumit. Kedua metode ini digunakan untuk menghitung satu nilai berdasarkan array Sintaksnya adalah _5Fungsi di atas diterapkan ke semua elemen array satu per satu dan "melanjutkan" hasil perhitungan ke panggilan berikutnya Argumennya adalah
Jika fungsi sudah diimplementasikan, massa dari pemanggilan fungsi sebelumnya diteruskan ke pemanggilan berikutnya sebagai argumen pertama Kedengarannya rumit, tetapi tidak seperti yang Anda pikirkan tentang argumen pertama sebagai "akumulator" yang menyimpan dan menggabungkan hasil dari semua eksekusi sebelumnya. Dan pada akhirnya, itu menjadi hasil dari 36Cara termudah untuk memahami metode ini adalah dengan melihat contoh Di sini kita mendapatkan total dari sebuah array dalam satu baris _6Fungsi yang diteruskan ke _36 hanya membutuhkan 2 argumen, itu cukup istimewaMari kita lihat detail dari apa yang terjadi
Aliran perhitungan Atau dalam bentuk tabel, dimana setiap baris mewakili pemanggilan fungsi pada elemen array berikutnya 38 42resultthe first call 0 5 5the second call 5 46 55the third call 55 55 58the fourth call 58 60 61the fifth call 61 63 64Di sini kita dapat melihat dengan jelas bagaimana hasil dari panggilan sebelumnya menjadi argumen pertama dari panggilan berikutnya Kita juga bisa mengalikan nilai awal (initial) _7Hasilnya sama. Itu karena tidak ada nilai awal, maka 36 mengambil elemen pertama dari array sebagai nilai awal dan mulai mengulang dari elemen keduaTabel perhitungannya sama dengan yang di atas, tanpa baris pertama Namun, penggunaan seperti itu membutuhkan perhatian lebih. Jika array kosong, maka memanggil 36 tanpa nilai awal akan menghasilkan kesalahanIni sebuah contoh _8Jadi sangat disarankan untuk selalu menentukan nilai awal Metode arr. reduceRight melakukan hal yang sama, tetapi beroperasi dari kanan ke kiri Array tidak membentuk bahasa tipe mereka sendiri. Array dibentuk berdasarkan objek Jadi _67 tidak membantu membedakan objek biasa dari array _9...Tapi array miring digunakan sampai ada metode khusus untuk ini. Himpunan. isArray(nilai). Metode ini mengembalikan 4 jika 69 adalah array, dan 6 jika sebaliknya 0Hamppir semua metode array yang memanggil fungsi – seperti 01, 08, 29, dengan pengecualian 74, menerima parameter tambahan yaitu 75Parameter tersebut tidak dijelaskan pada bab sebelumnya, karena jarang digunakan. Tapi untuk kelengkapan kita harus menutupi metodenya Berikut ini adalah sintaks lengkap dari metode _1Nilai parameter 75 menjadi 77 untuk 78Misalnya, di sini kita menggunakan metode dengan objek 79 sebagai filter, dan 75 meneruskan konteks _2Jika dalam contoh di atas kita menggunakan 81, maka 82 akan dapat dipanggil sebagai fungsi sendiri, dengan 83, yang selalu menyebabkan kesalahan sesaatPanggilan ke _84 dapat diganti dengan 85, yang melakukan hal yang sama. Cara yang pertama ( _84) lebih sering digunakan, karena sedikit lebih mudah dipahami oleh banyak orangLembar contekan tentang metode array
Harap dicatat bahwa metode 74, 25 dan 7 memodifikasi array itu sendiriMetode ini adalah yang paling sering digunakan, mencakup 99% kasus penggunaan. Tapi masih ada beberapa metode lain
Untuk daftar lengkap, lihat manual Karena sekilas mungkin tampak begitu banyak metode, cukup sulit untuk diingat. Tapi sebenarnya itu jauh lebih mudah Lihat lembar contekan hanya untuk mengetahui semua metode. Kemudian selesaikan tugas bab ini sebagai latihan, sehingga Anda memiliki pengalaman tentang metode larik Setelah itu kapan pun Anda perlu melakukan sesuatu dengan array, dan tidak tahu caranya - buka halaman ini, lihat lembar contekan dan temukan metode yang tepat. Contoh yang diberikan akan membantu Anda dalam menulis sintaks yang benar. Setelah itu Anda akan secara otomatis mengingat metodenya, tanpa terlalu banyak usaha yang rumit |