Rumah >hujung hadapan web >tutorial js >Mengapa Penyataan `return` JavaScript Kadangkala Mengembalikan `tidak ditentukan`?

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

DDD
DDDasal
2024-11-05 16:14:02325semak imbas

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());

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;
}

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
  );
}

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!

Kenyataan:
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