Mengapa Penyataan `return` JavaScript Kadangkala Mengembalikan `tidak ditentukan`?

DDD
Lepaskan: 2024-11-05 16:14:02
asal
259 orang telah melayarinya

Why Does JavaScript's `return` Statement Sometimes Return `undefined`?

JavaScript's Mysterious Return Statement Conundrum

Pertimbangkan coretan kod JavaScript berikut:

function correct() {
  return 15;
}

function wrong() {
  return 15;
}

console.log("correct() called : " + correct());
console.log("wrong() called : " + wrong());
Salin selepas log masuk

Anehnya, betul() mengembalikan nilai jangkaan 15, manakala wrong() mengembalikan undefined. Tingkah laku ini berbeza daripada kebanyakan bahasa pengaturcaraan yang lain, membuatkan kami tertanya-tanya mengapa ia berlaku.

Penjelasan Teknikal: Koma Bertitik Tidak Nampak

Koma bertitik JavaScript adalah pilihan dan jurubahasa memasukkannya secara automatik pada aksara baris baharu tertentu. Walau bagaimanapun, andaian jurubahasa mungkin tidak sentiasa sejajar dengan niat kita.

Dalam kes salah(), pernyataan pulangan diikuti dengan baris baharu. Ini mencetuskan sisipan koma bertitik, menghasilkan kod berikut:

function wrong() {
  return;
  15;
}
Salin selepas log masuk

Memecahkan Isu: Sintaks Pulangan

Pernyataan pulangan mesti diikuti dengan segera dengan nilai pulangan. Dalam wrong(), koma bertitik selepas pulangan menamatkan pernyataan, meninggalkan baris berikut terputus sambungan.

Penyelesaian: Melampirkan Ungkapan dalam Tanda Kurung

Untuk mengelakkan kekeliruan ini, kami boleh melampirkan ungkapan pulangan dalam kurungan:

function wrong() {
  return (
    15
  );
}
Salin selepas log masuk

Kurungan menghalang jurubahasa daripada memasukkan koma bertitik dan memastikan ungkapan itu dinilai dengan betul.

Memahami Penaakulan TypeScript

TypeScript, superset taip JavaScript, mengeluarkan ralat pengkompil dalam kod di atas, menyerlahkan kepentingan sintaks penyata pulangan yang betul. Ini menekankan kepentingan pertimbangan sedemikian semasa mentakrifkan fungsi dalam JavaScript.

Atas ialah kandungan terperinci Mengapa Penyataan `return` JavaScript Kadangkala Mengembalikan `tidak ditentukan`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
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!