国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

Jadual Kandungan
Buat fungsi dengan argumen pratetap
Buat fungsi rujukan diri
soalan yang sering ditanya mengenai argumen JavaScript
Apakah objek 'Argumen' dalam JavaScript? Ia mengandungi struktur seperti array dengan semua argumen yang diserahkan kepada fungsi. Objek ini berguna apabila fungsi perlu mengendalikan nombor argumen yang berubah -ubah. Adalah penting untuk diperhatikan bahawa objek 'argumen' bukanlah array sebenar, tetapi ia boleh ditukar kepada seseorang jika diperlukan. Walau bagaimanapun, anda boleh mengubahnya menjadi array menggunakan kaedah Array.From () atau pengendali penyebaran (...). Berikut adalah contoh:
checkArgStype () {
Bolehkah saya menggunakan objek 'Argumen' dengan parameter lalai dalam JavaScript?
Rumah hujung hadapan web tutorial js Argumen: Keanehan JavaScript

Argumen: Keanehan JavaScript

Mar 08, 2025 am 12:23 AM

3

Takeaways Key arguments: A JavaScript Oddity

Argumen 'adalah objek tempatan, seperti array yang terdapat di dalam setiap fungsi JavaScript, yang mengandungi semua argumen yang dibekalkan kepada fungsi apabila ia dipanggil. Ia bukan array yang benar, kerana ia tidak mempunyai kaedah array standard seperti Push and Pop. Argumen: Keanehan JavaScript

Walaupun batasannya, 'argumen' adalah alat yang berkuasa, yang membolehkan penciptaan fungsi fleksibel yang menerima bilangan argumen yang berubah -ubah, yang boleh ditukar kepada array sebenar menggunakan kaedah array, slice.

Argumen 'juga mempunyai harta' Callee 'yang mengandungi rujukan kepada fungsi yang mencipta objek' Argumen ', yang membolehkan fungsi tanpa nama untuk merujuk kepada dirinya sendiri. Ini boleh digunakan untuk mewujudkan fungsi rujukan sendiri dan fungsi dengan argumen pratetap.
  • Argumen adalah nama objek tempatan, seperti array yang terdapat di dalam setiap fungsi. Ia unik, sering diabaikan, tetapi sumber pengaturcaraan banyak pengaturcaraan; Semua perpustakaan utama JavaScript memanfaatkan kuasa objek Argumen. Ia adalah sesuatu yang setiap pengaturcara JavaScript harus menjadi biasa.
  • Di dalam mana -mana fungsi anda boleh mengaksesnya melalui pembolehubah: argumen, dan ia mengandungi pelbagai argumen yang dibekalkan kepada fungsi apabila ia dipanggil. Ia sebenarnya bukan pelbagai JavaScript; Typeof Argumen akan mengembalikan nilai: "Objek". Anda boleh mengakses nilai argumen individu melalui indeks array, dan ia mempunyai harta panjang seperti tatasusunan lain, tetapi ia tidak mempunyai kaedah array standard seperti push and pop.
  • Buat fungsi fleksibel

Walaupun ia mungkin kelihatan terhad, hujah adalah objek yang sangat berguna. Sebagai contoh, anda boleh membuat fungsi yang menerima bilangan argumen yang berubah -ubah. Fungsi format, yang terdapat di Perpustakaan Base2 oleh Dean Edwards, menunjukkan fleksibiliti ini:

Anda membekalkan rentetan templat, di mana anda menambah pemegang tempat untuk nilai menggunakan %1 hingga %9, dan kemudian membekalkan sehingga 9 argumen lain yang mewakili rentetan untuk dimasukkan. Contohnya:

kod di atas akan mengembalikan rentetan "dan kertas ingin tahu baju yang anda pakai".

Satu perkara yang mungkin anda perhatikan ialah, dalam definisi fungsi untuk format, kami hanya menetapkan satu hujah: String. JavaScript membolehkan kita lulus beberapa argumen ke fungsi, tanpa mengira definisi fungsi, dan objek argumen mempunyai akses kepada mereka semua.
function format(string) {
  var args = arguments;
  var pattern = new RegExp("%([1-" + arguments.length + "])", "g");
  return String(string).replace(pattern, function(match, index) {
    return args[index];
  });
};

menukarnya ke array sebenar

format("And the %1 want to know whose %2 you %3", "papers", "shirt", "wear");
Walaupun argumen bukanlah array JavaScript yang sebenarnya, kita dapat dengan mudah menukarnya kepada satu dengan menggunakan kaedah array standard, slice, seperti ini:

Args pembolehubah kini akan mengandungi objek array JavaScript yang sesuai yang mengandungi semua nilai dari objek argumen.

Buat fungsi dengan argumen pratetap

Objek Argumen membolehkan kita melakukan segala macam helah JavaScript. Berikut adalah definisi untuk fungsi Makefunc. Fungsi ini membolehkan anda membekalkan rujukan fungsi dan bilangan argumen untuk fungsi tersebut. Ia akan mengembalikan fungsi tanpa nama yang memanggil fungsi yang anda tentukan, dan membekalkan argumen pratetap bersama -sama dengan sebarang argumen baru yang dibekalkan apabila fungsi tanpa nama dipanggil:

function format(string) {
  var args = arguments;
  var pattern = new RegExp("%([1-" + arguments.length + "])", "g");
  return String(string).replace(pattern, function(match, index) {
    return args[index];
  });
};

Hujah pertama yang dibekalkan kepada Makefunc dianggap sebagai rujukan kepada fungsi yang anda ingin panggil (ya, tidak ada ralat pemeriksaan dalam contoh mudah ini) dan ia dikeluarkan dari argumen argumen. Makefunc kemudian mengembalikan fungsi tanpa nama yang menggunakan kaedah penerapan objek fungsi untuk memanggil fungsi yang ditentukan.

hujah pertama untuk memohon merujuk kepada skop fungsi akan dipanggil; Pada dasarnya apa kata kunci yang akan dirujuk di dalam fungsi yang dipanggil. Itu agak maju buat masa ini, jadi kami hanya menyimpannya. Hujah kedua adalah pelbagai nilai yang akan ditukar kepada objek Argumen untuk fungsi tersebut. Makefunc menyambungkan pelbagai nilai asal ke pelbagai argumen yang dibekalkan kepada fungsi tanpa nama dan membekalkannya kepada fungsi yang dipanggil.

Katakan ada mesej yang anda perlukan untuk mengeluarkan di mana templat selalu sama. Untuk menjimatkan anda dari selalu perlu mengutip templat setiap kali anda memanggil fungsi format, anda boleh menggunakan fungsi utiliti Makefunc untuk mengembalikan fungsi yang akan memanggil format untuk anda dan mengisi argumen templat secara automatik:

format("And the %1 want to know whose %2 you %3", "papers", "shirt", "wear");

anda boleh memanggil fungsi majortom berulang kali seperti ini:

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

Setiap kali anda memanggil fungsi Majortom ia memanggil fungsi format dengan hujah pertama, templat, sudah diisi. Panggilan di atas kembali:

function makeFunc() {
  var args = Array.prototype.slice.call(arguments);
  var func = args.shift();
  return function() {
    return func.apply(null, args.concat(Array.prototype.slice.call(arguments)));
  };
}

Buat fungsi rujukan diri

Anda mungkin berfikir yang cukup keren, tetapi tunggu, hujah -hujah mempunyai satu lagi kejutan; Ia mempunyai satu lagi harta yang berguna: Callee. Argumen.Callee mengandungi rujukan kepada fungsi yang mencipta objek Argumen. Bagaimana kita boleh menggunakan perkara sedemikian? argumen.callee adalah cara yang berguna fungsi tanpa nama dapat merujuk kepada dirinya sendiri.

var majorTom = makeFunc(format, "This is Major Tom to ground control. I'm %1.");
majorTom("stepping through the door");
majorTom("floating in a most peculiar way");
"This is Major Tom to ground control. I'm stepping through the door."
"This is Major Tom to ground control. I'm floating in a most peculiar way."
repeat is a function that takes a function reference, and 2 numbers. The first number is how many times to call the function and the second represents the delay, in milliseconds, between each call. Here's the definition for repeat:

Walau bagaimanapun, saya ingin membuat versi khas fungsi itu yang mengulangi 3 kali dengan kelewatan 2 saat antara setiap kali. Dengan fungsi ulangan saya, saya boleh melakukan ini:

function repeat(fn, times, delay) {
  return function() {
    if(times-- > 0) {
      fn.apply(null, arguments);
      var args = Array.prototype.slice.call(arguments);
      var self = arguments.callee;
      setTimeout(function(){self.apply(null,args)}, delay);
    }
  };
}
Hasil memanggil fungsi SomethingWrong adalah kotak amaran yang diulang 3 kali dengan kelewatan 2 saat antara setiap amaran.

function format(string) {
  var args = arguments;
  var pattern = new RegExp("%([1-" + arguments.length + "])", "g");
  return String(string).replace(pattern, function(match, index) {
    return args[index];
  });
};

soalan yang sering ditanya mengenai argumen JavaScript

Apakah objek 'Argumen' dalam JavaScript? Ia mengandungi struktur seperti array dengan semua argumen yang diserahkan kepada fungsi. Objek ini berguna apabila fungsi perlu mengendalikan nombor argumen yang berubah -ubah. Adalah penting untuk diperhatikan bahawa objek 'argumen' bukanlah array sebenar, tetapi ia boleh ditukar kepada seseorang jika diperlukan. Walau bagaimanapun, anda boleh mengubahnya menjadi array menggunakan kaedah Array.From () atau pengendali penyebaran (...). Berikut adalah contoh:

fungsi converArgStoArray () { var argsArray = array.from (argumen); Fungsi anak panah. Fungsi anak panah tidak mempunyai objek 'argumen' mereka sendiri. Walau bagaimanapun, mereka boleh mengakses objek 'Argumen' dari fungsi induk yang tidak terdekat. Ia mengembalikan rentetan yang menunjukkan jenis operan yang tidak dielakkan. Sebagai contoh, 'Typeof 3' akan kembali 'nombor', dan 'Typeof "Hello' 'akan kembali' String '. Berikut adalah contoh:

checkArgStype () {

untuk (var i = 0; i console.log (typeof argumen [i]); merujuk kepada hujah pertama yang diserahkan kepada fungsi. Begitu juga, 'argumen [1]' merujuk kepada hujah kedua, dan sebagainya. Sekiranya tiada hujah yang diluluskan, 'Argumen [0]' akan 'tidak ditentukan'. Walau bagaimanapun, ia secara amnya tidak disyorkan kerana ia boleh membawa kepada kod yang mengelirukan dan keras. Dalam mod yang ketat, apa -apa percubaan untuk mengubahsuai objek 'Argumen' akan membuang kesilapan. Ia berguna apabila anda perlu melangkah ke atas hujah -hujah atau menentukan berapa banyak argumen yang diluluskan.

Bolehkah saya menggunakan objek 'Argumen' dengan parameter lalai dalam JavaScript?

Ya, tetapi dengan kaveat. Sekiranya fungsi dengan parameter lalai dipanggil dengan argumen yang lebih sedikit daripada terdapat parameter, objek 'argumen' hanya akan mengandungi argumen sebenar yang diluluskan, bukan nilai lalai. Harta ini ditutup dan tidak boleh digunakan dalam kod baru. Sebaliknya, anda boleh menggunakan ekspresi fungsi bernama atau fungsi anak panah.

Atas ialah kandungan terperinci Argumen: Keanehan JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Agnes Tachyon Build Guide | Musume Derby Pretty
2 minggu yang lalu By Jack chen
Oguri Cap Build Guide | Musume Derby Pretty
3 minggu yang lalu By Jack chen
Puncak: Cara Menghidupkan Pemain
4 minggu yang lalu By DDD
Puncak bagaimana untuk emote
3 minggu yang lalu By Jack chen

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Bagaimana untuk bekerja dengan tarikh dan masa di JS? Bagaimana untuk bekerja dengan tarikh dan masa di JS? Jul 01, 2025 am 01:27 AM

Titik berikut harus diperhatikan apabila tarikh pemprosesan dan masa di JavaScript: 1. Terdapat banyak cara untuk membuat objek tarikh. Adalah disyorkan untuk menggunakan rentetan format ISO untuk memastikan keserasian; 2. Dapatkan dan tetapkan maklumat masa boleh diperoleh dan tetapkan kaedah, dan ambil perhatian bahawa bulan bermula dari 0; 3. Tarikh pemformatan secara manual memerlukan rentetan, dan perpustakaan pihak ketiga juga boleh digunakan; 4. Adalah disyorkan untuk menggunakan perpustakaan yang menyokong zon masa, seperti Luxon. Menguasai perkara -perkara utama ini secara berkesan dapat mengelakkan kesilapan yang sama.

Kenapa anda harus meletakkan tag  di bahagian bawah ? Kenapa anda harus meletakkan tag di bahagian bawah ? Jul 02, 2025 am 01:22 AM

PlacingtagsatthebottomofablogpostorwebpageservespracticalpurposesforSEO,userexperience,anddesign.1.IthelpswithSEObyallowingsearchenginestoaccesskeyword-relevanttagswithoutclutteringthemaincontent.2.Itimprovesuserexperiencebykeepingthefocusonthearticl

Apakah peristiwa yang menggelegak dan menangkap di Dom? Apakah peristiwa yang menggelegak dan menangkap di Dom? Jul 02, 2025 am 01:19 AM

Penangkapan dan gelembung acara adalah dua peringkat penyebaran acara di Dom. Tangkap adalah dari lapisan atas ke elemen sasaran, dan gelembung adalah dari elemen sasaran ke lapisan atas. 1. Penangkapan acara dilaksanakan dengan menetapkan parameter useCapture addeventlistener kepada benar; 2. Bubble acara adalah tingkah laku lalai, useCapture ditetapkan kepada palsu atau ditinggalkan; 3. Penyebaran acara boleh digunakan untuk mencegah penyebaran acara; 4. Acara menggelegak menyokong delegasi acara untuk meningkatkan kecekapan pemprosesan kandungan dinamik; 5. Penangkapan boleh digunakan untuk memintas peristiwa terlebih dahulu, seperti pemprosesan pembalakan atau ralat. Memahami kedua -dua fasa ini membantu mengawal masa dan bagaimana JavaScript bertindak balas terhadap operasi pengguna.

Bagaimanakah anda dapat mengurangkan saiz muatan aplikasi JavaScript? Bagaimanakah anda dapat mengurangkan saiz muatan aplikasi JavaScript? Jun 26, 2025 am 12:54 AM

Jika aplikasi JavaScript memuat perlahan -lahan dan mempunyai prestasi yang buruk, masalahnya adalah bahawa muatan terlalu besar. Penyelesaian termasuk: 1. Penggunaan kod pemisahan (codesplitting), memecah bundle besar ke dalam pelbagai fail kecil melalui react.lazy () atau membina alat, dan memuatkannya seperti yang diperlukan untuk mengurangkan muat turun pertama; 2. Keluarkan kod yang tidak digunakan (treeshaking), gunakan mekanisme modul ES6 untuk membersihkan "kod mati" untuk memastikan perpustakaan yang diperkenalkan menyokong ciri ini; 3. Memampatkan dan menggabungkan fail sumber, membolehkan GZIP/Brotli dan Terser memampatkan JS, menggabungkan fail dan mengoptimumkan sumber statik; 4. Gantikan kebergantungan tugas berat dan pilih perpustakaan ringan seperti hari.js dan ambil

Roundup JS yang pasti pada modul JavaScript: Modul ES vs Commonjs Roundup JS yang pasti pada modul JavaScript: Modul ES vs Commonjs Jul 02, 2025 am 01:28 AM

Perbezaan utama antara modul ES dan Commonjs adalah kaedah pemuatan dan senario penggunaan. 1.Commonjs dimuatkan secara serentak, sesuai untuk persekitaran sisi pelayan Node.js; 2. Modul tidak disengajakan, sesuai untuk persekitaran rangkaian seperti penyemak imbas; 3. Sintaks, modul ES menggunakan import/eksport dan mesti terletak di skop peringkat atas, manakala penggunaan CommonJS memerlukan/modul.exports, yang boleh dipanggil secara dinamik pada runtime; 4.Commonjs digunakan secara meluas dalam versi lama node.js dan perpustakaan yang bergantung kepadanya seperti Express, manakala modul ES sesuai untuk kerangka depan moden dan nod.jsv14; 5. Walaupun ia boleh dicampur, ia boleh menyebabkan masalah dengan mudah.

Bagaimana membuat permintaan HTTP di node.js? Bagaimana membuat permintaan HTTP di node.js? Jul 13, 2025 am 02:18 AM

Terdapat tiga cara biasa untuk memulakan permintaan HTTP dalam node.js: Gunakan modul terbina dalam, axios, dan nod-fetch. 1. Gunakan modul HTTP/HTTPS terbina dalam tanpa kebergantungan, yang sesuai untuk senario asas, tetapi memerlukan pemprosesan manual jahitan data dan pemantauan ralat, seperti menggunakan https.get () untuk mendapatkan data atau menghantar permintaan pos melalui .write (); 2.AXIOS adalah perpustakaan pihak ketiga berdasarkan janji. Ia mempunyai sintaks ringkas dan fungsi yang kuat, menyokong async/menunggu, penukaran JSON automatik, pemintas, dan lain -lain. Adalah disyorkan untuk memudahkan operasi permintaan tak segerak; 3.Node-Fetch menyediakan gaya yang serupa dengan pengambilan penyemak imbas, berdasarkan janji dan sintaks mudah

Apakah amalan terbaik untuk menulis kod JavaScript yang bersih dan dikekalkan? Apakah amalan terbaik untuk menulis kod JavaScript yang bersih dan dikekalkan? Jun 23, 2025 am 12:35 AM

Untuk menulis kod JavaScript yang bersih dan diselenggarakan, empat mata berikut harus diikuti: 1. Gunakan spesifikasi penamaan yang jelas dan konsisten, nama pembolehubah digunakan dengan kata nama seperti kiraan, nama fungsi dimulakan dengan kata kerja seperti fetchdata (), dan nama kelas digunakan dengan pascalcase seperti userprofile; 2. Elakkan fungsi dan kesan sampingan yang berlebihan, setiap fungsi hanya melakukan satu perkara, seperti pemisahan maklumat pengguna kemas kini ke formatuser, saveuser dan renderuser; 3. Gunakan modulariti dan komponenisasi yang munasabah, seperti memisahkan halaman ke userprofile, userstats dan widget lain dalam React; 4. Tulis komen dan dokumen sehingga masa, memberi tumpuan kepada menerangkan pemilihan logik dan algoritma utama

Bagaimanakah pengumpulan sampah berfungsi di JavaScript? Bagaimanakah pengumpulan sampah berfungsi di JavaScript? Jul 04, 2025 am 12:42 AM

Mekanisme pengumpulan sampah JavaScript secara automatik menguruskan memori melalui algoritma pembersihan tag untuk mengurangkan risiko kebocoran ingatan. Enjin melintasi dan menandakan objek aktif dari objek akar, dan tidak bertanda dianggap sebagai sampah dan dibersihkan. Sebagai contoh, apabila objek tidak lagi dirujuk (seperti menetapkan pembolehubah kepada null), ia akan dikeluarkan dalam pusingan seterusnya kitar semula. Punca kebocoran memori yang biasa termasuk: ① Pemasa atau pendengar peristiwa yang tidak jelas; ② Rujukan kepada pembolehubah luaran dalam penutupan; ③ Pembolehubah global terus memegang sejumlah besar data. Enjin V8 mengoptimumkan kecekapan kitar semula melalui strategi seperti kitar semula generasi, penandaan tambahan, kitar semula selari/serentak, dan mengurangkan masa menyekat benang utama. Semasa pembangunan, rujukan global yang tidak perlu harus dielakkan dan persatuan objek harus dihiasi dengan segera untuk meningkatkan prestasi dan kestabilan.

See all articles