Rumah > hujung hadapan web > tutorial js > Perbincangan ringkas tentang sifat dalaman fungsi JavaScript_Pengetahuan asas

Perbincangan ringkas tentang sifat dalaman fungsi JavaScript_Pengetahuan asas

WBOY
Lepaskan: 2016-05-16 16:18:45
asal
956 orang telah melayarinya

Terdapat dua atribut khas di dalam fungsi: argumen dan ini. argumen ialah objek seperti tatasusunan yang mengandungi semua parameter yang diluluskan,
Tetapi objek ini juga mempunyai atribut yang dipanggil callee, yang merupakan penunjuk kepada fungsi yang memiliki objek argumen.

Sila lihat contoh fungsi faktorial klasik:

Salin kod Kod adalah seperti berikut:

fungsi Faktorial(bilangan) {
Jika (bilangan <= 1) {
                    kembali 1;
              } lain {
Pulangan nombor * Faktorial(bilangan - 1);
            }
}
fungsi Faktorial(bilangan) {
Jika (bilangan <= 1) {
                    kembali 1;
              } lain {
Kembalikan num * arguments.callee(num - 1);
            }
}

Tidak salah menggunakan kaedah pertama, tetapi gandingan terlalu tinggi, yang tidak baik Selepas nama fungsi ditukar, nama fungsi dalaman juga mesti berubah
Kaedah kedua ialah gandingan rendah Tidak kira bagaimana nama fungsi berubah, ia tidak akan menjejaskan pelaksanaan fungsi.

Ini merujuk kepada objek persekitaran di mana data fungsi dilaksanakan, atau ia juga boleh dikatakan sebagai nilai ini

Salin kod Kod adalah seperti berikut:

          window.color = "merah";
      var o = {warna: "biru"};
fungsi sayColor() {
makluman(warna.ini);
}
         sayColor();//merah
o.sayColor = sayColor;
o.sayColor();//biru

Atribut pemanggil memegang rujukan fungsi yang memanggil fungsi semasa Jika fungsi semasa dipanggil dalam skop global, nilainya adalah Null

Salin kod Kod adalah seperti berikut:

fungsi outer() {
              dalam();
}
         fungsi inter(){
                  //alert(innter.caller);//Gandingan terlalu tinggi
alert(arguments.callee.caller);
}
        luar();

Di atas adalah semua kandungan sifat dalaman fungsi javascript saya harap anda semua menyukainya

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan