Jika fungsi dipanggil dengan argument yang hilang (kurang dari yang dideklarasikan), nilai yang hilang diatur menjadi tidak ditentukan (undefined) Show Terkadang hal ini dapat diterima, tetapi terkadang lebih baik untuk menetapkan nilai default ke parameter kontur <!DOCTYPE html> <html> <body> <p> Menyetel nilai default ke parameter fungsi. </p> <p id="demo"></p> <script> function myFunction(x, y) { if (y === undefined) { y = 2; } return x * y; } document.getElementById("demo").innerHTML = myFunction(4); </script> </body> </html> ECMAScript 2015 memungkinkan nilai parameter default dalam deklarasi fungsi ________satu_______ Petak ObjekFungsi JavaScript memiliki objek bawaan yang disebut objek argumentasi Argumen objek berisi argumen array yang digunakan saat fungsi dipanggil Dengan cara ini Anda cukup menggunakan fungsi untuk menemukan (misalnya) nilai tertinggi dalam daftar angka kontur <!DOCTYPE html> <html> <body> <p> Menemukan angka terbesar. </p> <p id="demo"></p> <script> function findMax() { var i; var max = -Infinity; for(i = 0; i < arguments.length; i++) { if (arguments[i] > max) { max = arguments[i]; } } return max; } document.getElementById("demo").innerHTML = findMax(4, 5, 6); </script> </body> </html> Atau buat fungsi untuk menjumlahkan semua input nilai <!DOCTYPE html> <html> <body> <p> Jumlah semua argumen: </p> <p id="demo"></p> <script> function sumAll() { var i; var sum = 0; for(i = 0; i < arguments.length; i++) { sum += arguments[i]; } return sum; } document.getElementById("demo").innerHTML = sumAll(1, 123, 500, 115, 44, 88); </script> </body> </html> Jika suatu fungsi dipanggil dengan terlalu banyak argumen (lebih dari yang dideklarasikan), argumen ini dapat dicapai dengan menggunakan argumen objek Sementara @roufamatic memang menunjukkan penggunaan kata kunci argumen dan @Ken menunjukkan contoh yang bagus dari sebuah objek untuk penggunaan, saya merasa tidak benar-benar membahas apa yang terjadi dalam hal ini dan dapat membingungkan pembaca di masa depan atau menanamkan praktik buruk karena tidak secara eksplisit menyatakan fungsi /method dimaksudkan untuk mengambil sejumlah variabel argumen/parameter _Ketika pengembang lain melihat kode Anda, sangat mudah untuk berasumsi bahwa fungsi ini tidak menggunakan parameter. Terutama jika pengembang itu tidak memiliki kata kunci argumen. Karena itu, merupakan ide bagus untuk mengikuti panduan gaya dan konsisten. Saya akan menggunakan Google untuk semua contoh Mari kita nyatakan secara eksplisit fungsi yang sama memiliki parameter variabel
Parameter objek VS var_argsMungkin ada kalanya suatu objek diperlukan karena ini adalah satu-satunya metode praktik terbaik yang disetujui dan dianggap sebagai peta data. Susunan asosiatif tidak disukai dan tidak dianjurkan SIDENOTE. Kata kunci argumen sebenarnya mengembalikan objek menggunakan angka sebagai kuncinya. Warisan prototipe juga merupakan keluarga objek. Lihat akhir jawaban untuk penggunaan array yang tepat di JS Dalam hal ini kita juga dapat menyatakannya secara eksplisit. catatan. Konvensi penamaan ini tidak disediakan oleh Google tetapi merupakan contoh deklarasi eksplisit dari tipe param. Ini penting jika Anda ingin membuat pola pengetikan yang lebih ketat dalam kode Anda _Pilih yang mana?Ini tergantung pada fungsi dan kebutuhan program Anda. Jika misalnya Anda hanya ingin mengembalikan basis nilai pada proses iteratif di semua argumen yang diberikan maka pasti tetap menggunakan kata kunci argumen. Jika Anda memerlukan definisi untuk argumen dan pemetaan data Anda, maka metode objek adalah caranya. Mari kita lihat dua contoh dan selesai Penggunaan argumen
Penggunaan objek _Mengakses array alih-alih objek (". args" Parameter sisanya)Seperti disebutkan di bagian atas jawaban, kata kunci argumen sebenarnya mengembalikan sebuah objek. Karena itu, metode apa pun yang ingin Anda gunakan untuk array harus dipanggil. Contoh dari ini |