Artikel ini akan menjelaskan 'kesalahan fungsi tidak ditentukan' saat JavaScript ditentukan.
Kesalahan Fungsi JavaScript Tidak Didefinisikan (TAPI DIDEFINISIKAN)
Kadang-kadang, fungsi didefinisikan dalam kode, tetapi tetap saja, Anda dapat menghadapi kesalahan berikut:
Ada dua alasan utama mengapa kesalahan di atas terjadi setelah mendefinisikan fungsi, yang tercantum di bawah ini:
- Fungsi salah eja atau memiliki kapitalisasi yang salah.
- Fungsi didefinisikan dalam lingkup yang berbeda.
Alasan 1: Fungsi Salah Eja atau Kapitalisasi Salah
Terkadang, fungsi dipanggil dengan ejaan yang salah. Karena JavaScript adalah bahasa yang peka terhadap huruf besar-kecil, juru bahasa JavaScript tidak dapat menemukannya dan melemparkan tanda “ fungsi tidak ditentukan ” kesalahan.
Contoh
Pertama, kita akan mendefinisikan fungsi “ sum ” yang mengembalikan jumlah dua angka “ A ' Dan ' B ”:
fungsi summ ( a, b ) {kembali A + B ;
}
Panggil fungsi “ sum ' sebagai ' jumlah ” dengan melewati angka “ 4 ' Dan ' 7 ”:
menghibur. catatan ( jumlah ( 4 , 7 ) )
Itu akan menimbulkan kesalahan “ jumlah tidak ditentukan ”:
Bagaimana memperbaikinya?
Untuk memperbaiki kesalahan ini, pastikan nama fungsi dieja dengan benar dan memiliki kapitalisasi yang benar:
menghibur. catatan ( sum ( 4 , 7 ) ) ;Sekarang, fungsi “ sum ” telah berhasil dipanggil dan mencetak jumlah dua angka “ 4 ' Dan ' 7 ”:
Alasan 2: Fungsi Didefinisikan dalam Lingkup yang Berbeda
Dalam JavaScript, setiap fungsi memiliki ruang lingkupnya sendiri, dan sebuah fungsi hanya dapat mengakses variabel dan fungsi yang didefinisikan dalam ruang lingkupnya sendiri. Jika suatu fungsi didefinisikan dalam ruang lingkup yang berbeda, itu mungkin tidak dapat diakses oleh ruang lingkup saat ini, menghasilkan ' fungsi tidak ditentukan ” kesalahan.
Contoh
Tentukan fungsi “ jumlah() ” dengan dua parameter “ A ' Dan ' B ' di dalam fungsi ' mencetak() ”:
fungsi cetak ( ) {jumlah fungsi ( a, b ) {
menghibur. catatan ( A + B ) ;
}
}
Panggil fungsi “ jumlah() ”:
jumlah ( 5 , 10 ) ;Ini memberikan kesalahan karena sum() didefinisikan di dalam fungsi print() tetapi diakses di luar dari ruang lingkup:
Bagaimana memperbaikinya?
Pastikan fungsi didefinisikan dalam ruang lingkup yang sesuai dan dapat diakses dari tempat pemanggilannya. Misalnya, jika fungsi didefinisikan di dalam fungsi lain, mungkin tidak dapat diakses dari luar.
Panggil fungsi sum() di dalam fungsi print() setelah mendefinisikannya:
fungsi cetak ( ) {jumlah fungsi ( a, b ) {
menghibur. catatan ( A + B ) ;
}
jumlah ( 1 , 4 ) ;
}
Panggil metode print():
mencetak ( ) ;Keluaran
Atau Anda juga dapat mendefinisikan fungsi secara terpisah dan memanggilnya dalam lingkup fungsi lain sebagai berikut:
jumlah fungsi ( a, b ) {menghibur. catatan ( A + B ) ;
}
Di sini, kita akan memanggil fungsi sum() di dalam fungsi print() :
fungsi cetak ( ) {jumlah ( 5 , 10 ) ;
}
Panggil metode print() untuk menjalankan fungsi “ jumlah() ”:
mencetak ( ) ;Jumlah dua bilangan “ 5 ' Dan ' 10 ” telah ditampilkan:
Kami telah membahas alasan dan solusi untuk JavaScript “ fungsi tidak didefinisikan kesalahan ” (tetapi didefinisikan).
Kesimpulan
Ada dua alasan utama mengapa “ fungsi tidak ditentukan ” kesalahan terjadi setelah mendefinisikan fungsi, seperti “ fungsi salah eja atau kapitalisasinya salah ” atau “ fungsi didefinisikan dalam lingkup yang berbeda ”. Artikel ini menjelaskan alasan dan solusi untuk 'kesalahan fungsi tidak ditentukan' JavaScript (tetapi sudah ditentukan).