Adakah Peletakan Kurung Kerinting Penting dalam Fungsi JavaScript Kembali?

Mary-Kate Olsen
Lepaskan: 2024-10-22 21:03:29
asal
723 orang telah melayarinya

Does Curly Brace Placement Matter in JavaScript Function Returns?

Kesan Peletakan Kurung Kerinting pada Hasil Fungsi JavaScript

Dalam JavaScript, peletakan pendakap kerinting dalam fungsi boleh mempengaruhi gelagat kod dengan ketara. Pertimbangkan dua contoh berikut:

<code class="javascript">function test()
{
  return
  {
    javascript: "fantastic"
  };
}

var r = test();
try {
  alert(r.javascript);
} catch (e) {
  alert('no - it broke: ' + typeof r);
}</code>
Salin selepas log masuk

Dalam kes ini, fungsi test() mengembalikan tidak ditentukan dan mesej amaran "tidak - ia pecah: tidak ditentukan" dipaparkan. Walau bagaimanapun, jika pendakap kerinting diletakkan pada baris yang sama seperti kembali, seperti yang ditunjukkan di bawah:

<code class="javascript">function test()
{
  return {
    javascript: "fantastic"
  };
}

var r = test();
try {
  alert(r.javascript);
} catch (e) {
  alert('no - it broke: ' + typeof r);
}</code>
Salin selepas log masuk

Fungsi test() akan mengembalikan objek dan mesej amaran akan memaparkan "hebat".

Percanggahan ini berpunca daripada sisipan koma bertitik automatik JavaScript. Apabila baris tidak berakhir dengan koma bertitik, tetapi berpotensi menandakan penghujung pernyataan, JavaScript secara automatik memasukkan satu. Akibatnya, coretan kod pertama ditafsirkan dengan berkesan sebagai:

<code class="javascript">function test()
{
  return; // inserted semicolon
  {
    javascript: "fantastic"
  };
}</code>
Salin selepas log masuk

Koma bernoktah selepas pemulangan; menamatkan pernyataan pulangan, menyebabkan blok pendakap kerinting menjadi kod tidak boleh dicapai. Oleh itu, test() mengembalikan undefined.

Sebaliknya, contoh kedua tidak mencetuskan sisipan koma bertitik automatik, menghasilkan nilai pulangan objek yang sah. Ini bersamaan dengan kod berikut:

<code class="javascript">function test() {
    var myObject = new Object();
    myObject.javascript = "fantastic";
    return myObject;
}</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Adakah Peletakan Kurung Kerinting Penting dalam Fungsi JavaScript Kembali?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber: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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!