Rumah  >  Artikel  >  hujung hadapan web  >  Pengenalan kepada hujah dan kelebihan beban dalam kemahiran Javascript_javascript

Pengenalan kepada hujah dan kelebihan beban dalam kemahiran Javascript_javascript

WBOY
WBOYasal
2016-05-16 16:09:131184semak imbas

Disebabkan ralat reka bentuk bahasa, argumen boleh dianggap sebagai tatasusunan.

Salin kod Kod adalah seperti berikut:

fungsi sifar () {
console.log(argumen[0]);
}

Terdapat juga
Salin kod Kod adalah seperti berikut:

fungsi sifar () {
for(var i=0;i console.log(argumen[i]);
}
}

Ia mengambil kesempatan daripada fakta bahawa Javascript ialah Javasc

Pembolehubah argumen di sini menyediakan antara muka seperti tatasusunan untuk parameter sebenar. Oleh kerana parameter argumen yang berubah-ubah di sini, kita boleh menggunakan perkara yang menarik ini untuk melakukan beberapa perkara yang menarik, seperti terlebih muatan.

Muat semula JavaScript

Terdapat soalan tentang terlebih muatan pada stackvoerflow, jadi saya mempunyai jawapan pertama

Salin kod Kod adalah seperti berikut:

jika (jenis rakan === "tidak ditentukan") {

} lain {

}

Jawapan lain ialah

Salin kod Kod adalah seperti berikut:

suis (arguments.length) {
kes 0:
//Mungkin ralat
Rehat;
kes 1:
//Lakukan sesuatu
Rehat;
kes 2:
lalai: //Masuk untuk mengendalikan kes lebih banyak parameter
//Lakukan sesuatu yang lain
Rehat;
}

Cuma kaedah ini kelihatan tidak bagus pada akhirnya.

Salin kod Kod adalah seperti berikut:

fungsi sifar1 (){
console.log('argumen 1')
};
fungsi sifar2 (){
console.log('argumen 2')
};
fungsi sifar () {
if(arguments.length == 1){
Sifar1();
} lain{
Sifar2();
}
}

Ia benar-benar tidak kelihatan baik walaupun kita menukar suis..kes, ia tidak akan kelihatan baik.

Argumen Javascript bukan array

argumen tidak selalunya array seperti yang kita lihat, kadangkala mungkin tidak.

Salin kod Kod adalah seperti berikut:

fungsi hello(){
console.log(jenis argumen);
}

Jenis hujah di sini ialah objek, walaupun jenis tatasusunan juga objek, walaupun kita boleh menukarnya kepada tatasusunan
Salin kod Kod adalah seperti berikut:

var args = Array.prototype.slice.call(arguments);

Tetapi ini juga menunjukkan bahawa ini bukan array Ia hanya mempunyai satu-satunya atribut Array, iaitu panjang. Selain itu,

arguments.callee

Rujukan kepada fungsi yang sedang dilaksanakan.

hujah.pemanggil

Rujukan kepada fungsi yang menggunakan fungsi yang sedang dilaksanakan.

hujah.panjang

Rujukan kepada bilangan hujah yang dihantar kepada fungsi.

Kenyataan:
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