Rumah hujung hadapan web tutorial js Petua parameter_javascript lalai fungsi ECMAScript6

Petua parameter_javascript lalai fungsi ECMAScript6

May 16, 2016 pm 03:55 PM
Parameter lalai

Setiap ciri baharu yang ditambah semasa kemas kini bahasa diekstrak daripada keperluan berjuta-juta pembangun Penggunaan Standard boleh mengurangkan kesakitan pengaturcara dan membawa kemudahan.

Kami sering menulis begini

function calc(x, y) {
  x = x || 0;
  y = y || 0;
  // to do with x, y
  // return x/y
}
Salin selepas log masuk

Ringkasnya, x dan y memberikan nilai lalai 0. Apabila tidak diluluskan, x dan y dikira dengan nilai 0. Setelah lulus, nilai sebenar akan digunakan untuk pengiraan.

Contoh lain ialah mentakrifkan ajax

function ajax(url, async, dataType) {
  async = async !== false
  dataType = dataType || 'JSON'
  // ...
}
Salin selepas log masuk

Fungsi ajax ringkas yang dirangkumkan dengan JS asli.

Contoh lain ialah mentakrifkan kelas segi empat tepat

function Rectangle(width, height) {
  this.width = width || 200;
  this.height = height || 300;
}
Salin selepas log masuk

Tanpa melepasi sebarang parameter apabila baharu, segi empat tepat dengan lebar dan ketinggian lalai 200*300 akan dibuat.

Sama ada kelas calc, ajax atau Rectangle, kita semua perlu mengendalikan nilai lalai dalam badan fungsi, bukankah lebih baik jika bahasa mengendalikannya dengan sendirinya? ES6 menyediakan ciri ini (Parameter Lalai Yang berikut ialah calc, ajax, dan Rectangle yang ditulis semula dengan ciri baharu ES6.

function calc(x=0, y=0) {
  // ...
  console.log(x, y)
}
calc(); // 0 0
calc(1, 4); // 1 4
 
function ajax(url, async=true, dataType="JSON") {
  // ...
  console.log(url, async, dataType)
}
ajax('../user.action'); // ../user.action true JSON
ajax('../user.action', false); // ../user.action false JSON
ajax('../user.action', false, 'XML'); // ../user.action false XML
 
function Rectangle(width=200, height=300) {
  this.width = width;
  this.height = height;
}
var r1 = new Rectangle(); // 200*300的矩形
var r2 = new Rectangle(100); // 100*300的矩形
var r3 = new Rectangle(100, 500); // 100*500矩形
Salin selepas log masuk

Seperti yang anda lihat, ES6 mengalihkan bahagian nilai lalai daripada kurungan ke kurungan, dan turut mengurangkan operasi "||" dan badan fungsi telah dikecilkan. Nilai lalai parameter harus berada di tempat di mana parameter ditentukan, yang kelihatan lebih mudah. O(∩_∩)O

Parameter lalai boleh ditakrifkan pada sebarang kedudukan, seperti mentakrifkan

di tengah
function ajax(url, async=true, success) {
  // ...
  console.log(url, async, success)
}
Salin selepas log masuk

mentakrifkan parameter lalai async, url dan kejayaan diperlukan Dalam kes ini, anda perlu menetapkan parameter tengah kepada undefined

ajax('../user.action', undefined, function() {
   
})
Salin selepas log masuk

Perhatikan, jangan ambil mudah dan tukar undefined kepada null Walaupun null == undefined, selepas melepasi null, async dalam badan fungsi akan menjadi batal dan tidak benar.

Perkara berikut perlu diberi perhatian:

1. Selepas mentakrifkan parameter lalai, atribut panjang fungsi akan dikurangkan, iaitu beberapa parameter lalai tidak termasuk dalam pengiraan panjang

function calc(x=0, y=0) {
  // ...
  console.log(x, y)
}
function ajax(url, async=true, dataType="JSON") {
  // ...
  console.log(url, async, dataType)
}
console.log(calc.length); // 0
console.log(ajax.length); // 1

Salin selepas log masuk

2. Let dan const tidak boleh digunakan untuk mengisytiharkan nilai lalai sekali lagi, var boleh menjadi

function ajax(url="../user.action", async=true, success) {
  var url = ''; // 允许
  let async = 3; // 报错
  const success = function(){}; // 报错
}

Salin selepas log masuk

Satu lagi perkara yang menarik ialah: parameter lalai tidak boleh menjadi jenis nilai, ia boleh menjadi panggilan fungsi

function getCallback() {
  return function() {
    // return code
  }
}
 
function ajax(url, async, success=getCallback()) {
  // ...
  console.log(url, async, success)
}
Salin selepas log masuk

Anda boleh melihat bahawa parameter kejayaan di sini ialah panggilan fungsi Jika parameter ketiga tidak diluluskan semasa memanggil ajax, fungsi getCallback akan dilaksanakan, yang mengembalikan fungsi baharu yang diberikan kepada kejayaan. Ini adalah fungsi yang sangat berkuasa yang memberikan pengaturcara banyak ruang untuk imaginasi.

Sebagai contoh, anda boleh menggunakan ciri ini untuk memaksa parameter tertentu diluluskan, jika tidak, ralat akan dilaporkan

function throwIf() {
  throw new Error('少传了参数');
}
 
function ajax(url=throwIf(), async=true, success) {
  return url;
}
ajax(); // Error: 少传了参数
Salin selepas log masuk

Di atas adalah keseluruhan kandungan artikel ini, saya harap anda semua menyukainya.

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)
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
4 minggu 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)

Parameter lalai dalam pengisytiharan fungsi C++: analisis komprehensif tentang pengisytiharan dan penggunaannya Parameter lalai dalam pengisytiharan fungsi C++: analisis komprehensif tentang pengisytiharan dan penggunaannya May 02, 2024 pm 03:09 PM

Parameter lalai dalam C++ menyediakan keupayaan untuk menentukan nilai lalai untuk parameter fungsi, dengan itu meningkatkan kebolehbacaan kod, kesederhanaan dan fleksibiliti. Isytihar parameter lalai: Tambahkan simbol "=" selepas parameter dalam pengisytiharan fungsi, diikuti dengan nilai lalai. Penggunaan: Apabila fungsi dipanggil, jika parameter pilihan tidak disediakan, nilai lalai akan digunakan. Kes praktikal: Fungsi yang mengira jumlah dua nombor Satu parameter diperlukan dan satu lagi adalah pilihan dan mempunyai nilai lalai 0. Kelebihan: Kebolehbacaan yang dipertingkatkan, peningkatan fleksibiliti, pengurangan kod plat dandang. Nota: Ia hanya boleh dinyatakan dalam pengisytiharan, ia mestilah pada penghujungnya, dan jenisnya mestilah serasi.

Bagaimana untuk mengoptimumkan penggunaan parameter lalai dan parameter variadik dalam fungsi C++ Bagaimana untuk mengoptimumkan penggunaan parameter lalai dan parameter variadik dalam fungsi C++ Apr 20, 2024 am 09:03 AM

Optimumkan fungsi parameter lalai dan pembolehubah C++: Parameter lalai: Benarkan fungsi menggunakan nilai lalai, mengurangkan lebihan. Letakkan parameter lalai terakhir untuk meningkatkan kebolehbacaan. Gunakan parameter lalai constexpr untuk mengurangkan overhed. Gunakan pengikatan berstruktur untuk meningkatkan kebolehbacaan parameter lalai yang kompleks. Parameter pembolehubah: membenarkan fungsi menerima bilangan parameter yang berubah-ubah. Cuba elakkan menggunakan hujah variadic dan gunakannya hanya apabila perlu. Gunakan std::initializer_list untuk mengoptimumkan fungsi variadic untuk meningkatkan prestasi.

Penggunaan dan kelebihan parameter lalai C++ Penggunaan dan kelebihan parameter lalai C++ Apr 18, 2024 pm 09:33 PM

Ya, ciri parameter lalai dalam C++ membolehkan anda meninggalkan parameter tertentu apabila fungsi dipanggil dan parameter ini tidak disediakan, nilai lalai digunakan, dengan itu meningkatkan fleksibiliti, kebolehbacaan dan kebolehselenggaraan. kod. .

Perkara yang perlu diberi perhatian tentang parameter lalai dalam fungsi C++ Perkara yang perlu diberi perhatian tentang parameter lalai dalam fungsi C++ Apr 20, 2024 am 11:09 AM

Ambil perhatian bahawa parameter lalai dalam fungsi C++ mesti muncul pada penghujung senarai parameter. Berbilang nilai lalai tidak boleh ditentukan untuk parameter yang sama. nombor pembolehubah vararg parameter tidak boleh mempunyai nilai lalai. Parameter lalai tidak boleh dikongsi oleh parameter fungsi terlampau beban.

Bagaimana untuk menggunakan parameter lalai fungsi C++? Bagaimana untuk menggunakan parameter lalai fungsi C++? Apr 19, 2024 pm 03:21 PM

Parameter lalai membenarkan fungsi untuk menentukan nilai lalai apabila dipanggil, memudahkan kod dan meningkatkan kebolehselenggaraan. Sintaks parameter lalai ialah: typefunction_name(parameter_list,typeparameter_name=default_value). Antaranya, jenis ialah jenis parameter, parameter_name ialah nama parameter, dan default_value ialah nilai lalai. Dalam contoh, fungsi tambah mempunyai dua parameter, yang mana nilai lalai num2 ialah 0. Apabila memanggil fungsi, anda boleh menentukan hanya num1 dan num2 akan menggunakan nilai lalai, atau tentukan kedua-dua num1 dan num2.

Penggunaan Ajaib Parameter Lalai PHP: Rahsia untuk Meningkatkan Kecekapan Kod Penggunaan Ajaib Parameter Lalai PHP: Rahsia untuk Meningkatkan Kecekapan Kod Mar 24, 2024 am 10:33 AM

PHP ialah bahasa skrip bahagian pelayan yang digunakan secara meluas untuk membangunkan laman web dan aplikasi dinamik. Dalam PHP, menggunakan parameter lalai boleh meningkatkan kecekapan dan kesederhanaan kod anda. Artikel ini akan meneroka cara memanfaatkan fungsi parameter lalai PHP untuk mencapai pengaturcaraan yang lebih cekap. 1. Konsep parameter lalai Dalam fungsi PHP, kita boleh menetapkan nilai lalai untuk parameter. Apabila fungsi dipanggil tanpa memberikan nilai parameter, nilai lalai akan digunakan sebaliknya. Melakukannya boleh memudahkan panggilan fungsi, mengurangkan kod berlebihan dan meningkatkan kebolehbacaan. 2. Parameter lalai

Bagaimanakah kaedah lulus parameter fungsi PHP mengendalikan parameter pilihan dan parameter lalai? Bagaimanakah kaedah lulus parameter fungsi PHP mengendalikan parameter pilihan dan parameter lalai? Apr 15, 2024 pm 09:51 PM

Kaedah lulus parameter: lulus mengikut nilai (jenis asas) dan lulus dengan rujukan (jenis komposit). Parameter pilihan: Nilai parameter dibenarkan untuk ditentukan, tetapi tidak diperlukan. Parameter lalai: Membolehkan menentukan nilai lalai untuk parameter pilihan. Pertempuran praktikal: Tunjukkan cara mengira luas segi empat tepat menggunakan parameter pilihan dan lalai melalui fungsi contoh.

Analisis senario penggunaan parameter lalai dalam fungsi C++ Analisis senario penggunaan parameter lalai dalam fungsi C++ Apr 19, 2024 pm 06:12 PM

Parameter lalai digunakan untuk memudahkan panggilan fungsi, menyediakan fungsi pilihan dan meningkatkan kebolehbacaan kod. Senario khusus termasuk: 1. Meninggalkan parameter yang tidak biasa; 2. Menyediakan nilai lalai untuk fungsi pilihan 3. Menentukan nilai lalai secara eksplisit untuk meningkatkan kefahaman kod.

See all articles