Jadual Kandungan
Function.prototype.apply
Syntax
Contoh
Output
Function.prototype.call
Perbezaan antara Function.prototype.apply dan Function.prototype.call
Rumah hujung hadapan web tutorial js Perbezaan antara Function.prototype.apply dan Function.prototype.call dalam JavaScript

Perbezaan antara Function.prototype.apply dan Function.prototype.call dalam JavaScript

Aug 24, 2023 pm 01:05 PM

JavaScript 中 Function.prototype.apply 和 Function.prototype.call 的区别

Function.prototype.apply ​​​​dan Function.prototype.call ialah kaedah yang membolehkan anda memanggil fungsi dengan nilai dan parameter tertentu ini. Perbezaan utama antara kedua-duanya ialah yang terpakai membolehkan anda menghantar dalam tatasusunan parameter, manakala panggilan memerlukan anda menyenaraikan parameter satu demi satu.

Function.prototype.apply

​​>

Function .prototype.apply ialah kaedah yang membolehkan anda memanggil fungsi dengan tatasusunan nilai dan hujah tertentu ini.

Syntax

Sintaks untuk menggunakan apply ialah -

func.apply(thisArg, argsArray)
Salin selepas log masuk

Di sini thisArg ialah nilai yang akan digunakan seperti ini di dalam fungsi. argsArray ialah susunan hujah yang akan dihantar ke fungsi.

Contoh

Berikut ialah contoh memanggil fungsi menggunakan apply -

<!doctype html>
<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result"></div>
   <script>
      function sayHello(name) {
         return "Hello, " + name + "!";
      }
      document.getElementById("result").innerHTML = sayHello.apply(null, ["John"])
   </script>
</body>
</html>
Salin selepas log masuk

Output

Kod di atas akan mencetak output di bawah.

Hello, John!
Salin selepas log masuk
Salin selepas log masuk

Seperti yang anda boleh lihat, kami melepasi null untuk Arg ini kerana kami tidak mahu menetapkan nilai ini. Kami lulus tatasusunan untuk argsArray yang mengandungi parameter "John". Hasilnya ialah panggilan ke fungsi sayHello dengan "John" sebagai hujah nama.

Function.prototype.call

Function.prototype.call ialah fungsi yang membolehkan anda memanggil kaedah dengan senarai nilai dan parameter tertentu ini.

Syntax

Sintaks untuk menggunakan panggilan ialah

func.call(thisArg, arg1, arg2, ...)
Salin selepas log masuk

di mana Arg ini ialah nilai yang akan digunakan seperti ini di dalam fungsi. arg1, arg2, ... adalah hujah yang akan dihantar ke fungsi.

Contoh

Berikut adalah contoh menggunakan panggilan Fungsi panggilan -

<!doctype html>
<html>
<head>
   <title>Examples</title>
</head>
<body>
   <div id="result"></div>
   <script>
      function sayHello(name) {
         return "Hello, " + name + "!";
      }
      document.getElementById("result").innerHTML = sayHello.call(null, ["John"])
   </script>
</body>
</html>
Salin selepas log masuk

Output

Kod di atas akan mencetak output di bawah.

Hello, John!
Salin selepas log masuk
Salin selepas log masuk

Seperti yang anda boleh lihat, kami melepasi null untuk Arg ini kerana kami tidak mahu menetapkan nilai ini. Kami mengambil "John" sebagai satu-satunya parameter. Hasilnya ialah panggilan ke fungsi sayHello dengan "John" sebagai parameter nama.

Perbezaan antara Function.prototype.apply dan Function.prototype.call

Jadual di bawah menyerlahkan perbezaan utama antara Function.prototype.apply dan Function.prototype.call -

applyFunction.prototype.callDefinisi Kaedah ini membolehkan kita memanggil fungsi dengan nilai ParameterKami lulus pelbagai parameter. Kami lulus senarai parameter. Kelajuan Oleh kerana ia tidak mencipta fungsi baharu, ia lebih pantas daripada em> Kerana setiap panggilan mencipta fungsi baharu, ia lebih perlahan daripada
Asas Fungsi Perbandingan
Kaedah ini membolehkan kita memanggil fungsi dengan nilai ini tertentu dan pelbagai parameter.

ini dan senarai hujah tertentu.

memanggil.

memohon. Penggunaan objek.

Panggil fungsi tanpa nama.

Panggil fungsi dan nyatakan konteks "ini"
  • Panggil fungsi tanpa menyatakan hujah pertama.

Kesimpulan
Dalam tutorial ini, kami membincangkan perbezaan antara kaedah
    apply
  • ​​dan

    panggilan

    >. Perbezaan utama antara keduanya ialah bagaimana mereka menerima hujah. Kaedah ini mempunyai kegunaan yang berbeza. Anda boleh melihat baris penggunaan dalam jadual di atas.

Atas ialah kandungan terperinci Perbezaan antara Function.prototype.apply dan Function.prototype.call dalam 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

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.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

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 saya membuat dan menerbitkan perpustakaan JavaScript saya sendiri? Bagaimana saya membuat dan menerbitkan perpustakaan JavaScript saya sendiri? Mar 18, 2025 pm 03:12 PM

Artikel membincangkan membuat, menerbitkan, dan mengekalkan perpustakaan JavaScript, memberi tumpuan kepada perancangan, pembangunan, ujian, dokumentasi, dan strategi promosi.

Bagaimanakah saya mengoptimumkan kod JavaScript untuk prestasi dalam penyemak imbas? Bagaimanakah saya mengoptimumkan kod JavaScript untuk prestasi dalam penyemak imbas? Mar 18, 2025 pm 03:14 PM

Artikel ini membincangkan strategi untuk mengoptimumkan prestasi JavaScript dalam pelayar, memberi tumpuan kepada mengurangkan masa pelaksanaan dan meminimumkan kesan pada kelajuan beban halaman.

Apa yang perlu saya lakukan jika saya menghadapi percetakan kod yang dihiasi untuk resit kertas terma depan? Apa yang perlu saya lakukan jika saya menghadapi percetakan kod yang dihiasi untuk resit kertas terma depan? Apr 04, 2025 pm 02:42 PM

Soalan dan penyelesaian yang sering ditanya untuk percetakan tiket kertas terma depan dalam pembangunan front-end, percetakan tiket adalah keperluan umum. Walau bagaimanapun, banyak pemaju sedang melaksanakan ...

Siapa yang dibayar lebih banyak Python atau JavaScript? Siapa yang dibayar lebih banyak Python atau JavaScript? Apr 04, 2025 am 12:09 AM

Tidak ada gaji mutlak untuk pemaju Python dan JavaScript, bergantung kepada kemahiran dan keperluan industri. 1. Python boleh dibayar lebih banyak dalam sains data dan pembelajaran mesin. 2. JavaScript mempunyai permintaan yang besar dalam perkembangan depan dan stack penuh, dan gajinya juga cukup besar. 3. Faktor mempengaruhi termasuk pengalaman, lokasi geografi, saiz syarikat dan kemahiran khusus.

Bagaimanakah saya boleh debug kod javascript dengan berkesan menggunakan alat pemaju pelayar? Bagaimanakah saya boleh debug kod javascript dengan berkesan menggunakan alat pemaju pelayar? Mar 18, 2025 pm 03:16 PM

Artikel ini membincangkan debugging JavaScript yang berkesan menggunakan alat pemaju pelayar, memberi tumpuan kepada menetapkan titik putus, menggunakan konsol, dan menganalisis prestasi.

Bagaimanakah saya menggunakan peta sumber untuk debug kod JavaScript minified? Bagaimanakah saya menggunakan peta sumber untuk debug kod JavaScript minified? Mar 18, 2025 pm 03:17 PM

Artikel ini menerangkan cara menggunakan peta sumber untuk debug JavaScript minifikasi dengan memetakannya kembali ke kod asal. Ia membincangkan membolehkan peta sumber, menetapkan titik putus, dan menggunakan alat seperti Chrome Devtools dan Webpack.

Bagaimana untuk menggabungkan elemen array dengan ID yang sama ke dalam satu objek menggunakan JavaScript? Bagaimana untuk menggabungkan elemen array dengan ID yang sama ke dalam satu objek menggunakan JavaScript? Apr 04, 2025 pm 05:09 PM

Bagaimana cara menggabungkan elemen array dengan ID yang sama ke dalam satu objek dalam JavaScript? Semasa memproses data, kita sering menghadapi keperluan untuk mempunyai id yang sama ...

Demystifying JavaScript: Apa yang berlaku dan mengapa penting Demystifying JavaScript: Apa yang berlaku dan mengapa penting Apr 09, 2025 am 12:07 AM

JavaScript adalah asas kepada pembangunan web moden, dan fungsi utamanya termasuk pengaturcaraan yang didorong oleh peristiwa, penjanaan kandungan dinamik dan pengaturcaraan tak segerak. 1) Pengaturcaraan yang didorong oleh peristiwa membolehkan laman web berubah secara dinamik mengikut operasi pengguna. 2) Penjanaan kandungan dinamik membolehkan kandungan halaman diselaraskan mengikut syarat. 3) Pengaturcaraan Asynchronous memastikan bahawa antara muka pengguna tidak disekat. JavaScript digunakan secara meluas dalam interaksi web, aplikasi satu halaman dan pembangunan sisi pelayan, sangat meningkatkan fleksibiliti pengalaman pengguna dan pembangunan silang platform.

See all articles