Dalam JavaScript, terdapat mekanisme sisipan automatik untuk titik koma bertitik di hujung baris. Sudah tentu, adalah lebih baik untuk membiasakan diri menaip koma bertitik dan memahami cara JavaScript mengendalikan pengguguran koma bertitik, kerana pengetahuan ini akan membantu anda memahami kod tanpa koma bertitik.
Bahasa JavaScript mempunyai mekanisme: semasa menghurai, koma bertitik boleh disisipkan secara automatik selepas ayat untuk mengubah suai pemisah koma bertindih yang hilang di hujung ayat. Walau bagaimanapun, kerana koma bernoktah yang dimasukkan secara automatik ini bercanggah dengan mekanisme lain bahasa JavaScript, iaitu semua aksara ruang kosong diabaikan, atur cara boleh menggunakan ruang putih untuk memformat kod.
Konflik antara kedua-dua mekanisme ini dengan mudah boleh menutup ralat penghuraian yang lebih serius. Titik koma kadang-kadang disisipkan pada masa yang tidak sesuai. Sebagai contoh, memasukkan koma bernoktah secara automatik dalam pernyataan pulangan akan mempunyai akibat berikut: Jika pernyataan pulangan adalah untuk mengembalikan nilai, permulaan ungkapan nilai ini mestilah pada baris yang sama dengan pulangan, contohnya:
var f = function(){ return { status: true }; }
Nampaknya objek yang mengandungi elemen ahli status dikembalikan di sini. Malangnya, JavaScript secara automatik memasukkan koma bertitik supaya ia kembali tidak ditentukan, menyebabkan objek dikembalikan di bawah diabaikan.
Apabila pemasukan koma bertitik automatik menyebabkan program disalahfahamkan, tidak akan ada amaran. Masalah ini boleh dielakkan dengan meletakkan { di penghujung baris sebelumnya dan bukannya di awal baris seterusnya, contohnya:
var f = function(){ return { status: true }; }
Untuk mengelakkan ralat yang disebabkan oleh meninggalkan koma bertitik, adalah disyorkan Membangunkan tabiat yang baik Tidak kira sama ada pernyataan dalam baris itu lengkap atau tidak, asalkan ia adalah pernyataan yang lengkap, koma bertitik mesti ditambah untuk menunjukkan akhir ayat.
Bagi memudahkan pembacaan, apabila ayat yang panjang perlu dipaparkan pada baris yang berasingan, perlu dipastikan tiada semantik logik yang lengkap boleh dibentuk dalam satu baris. Sebagai contoh, kod berikut ialah pernyataan tugasan berterusan Anda boleh melihat hubungan mereka dengan lebih jelas dengan memaparkannya dalam baris yang berasingan. Percabangan jenis ini menunjukkan bahawa oleh kerana semantik logik bebas tidak boleh dibentuk dalam satu baris, JavaScript tidak akan menganggap setiap baris sebagai ayat bebas, jadi tidak akan ada kesamaran.
var a = b = c = 4;
Pernyataan di atas dipaparkan seperti berikut dalam satu baris: var a = b = c = 4;
Untuk pernyataan berikut, jika ia tidak betul Apabila dipaparkan dalam baris yang berasingan, kesamaran boleh timbul dengan mudah. Maksud ayat ini: Tentukan pembolehubah i, dan kemudian berikan nilai kepadanya Jika pembolehubah a adalah benar, nilainya ditetapkan kepada 1. Jika tidak, pembolehubah b dinilai Jika b adalah benar, nilainya ditetapkan kepada 2. Jika tidak, pembolehubah c dinilai Jika c adalah benar, nilai yang ditetapkan ialah 3, jika tidak nilai yang ditetapkan ialah 4.
var i = a ? 1 : b ? 2 : c ? 3 : 4;
Paparan cawangan berikut adalah salah. , kerana ungkapan a? 1: b boleh membentuk semantik logik bebas, jadi JavaScript secara automatik akan menambah koma bertitik selepasnya untuk mewakili ayat bebas.
var i = a ? 1: b ? 2 : c ? 3 : 4;
Kaedah selamat hendaklah dipaparkan dalam baris berasingan seperti berikut, supaya setiap baris tidak boleh membentuk semantik bebas.
var i = a ? 1 : b ? 2 : c ? 3 : 4;
Ringkasnya, semasa menulis kod, anda harus membina tabiat yang baik untuk menggunakan koma bertitik untuk mengakhiri ayat. Ayat yang dipaparkan pada baris berasingan harus memastikan bahawa satu baris tidak boleh membentuk semantik logik undang-undang bebas dengan mudah
PS: Contoh terperinci javascript secara automatik menambah koma bertitik di hujung baris
Koma bertitik (; ), biasanya digunakan pada penghujung baris pernyataan, kodnya adalah seperti berikut:
var webName = "php中文网"; var url = www.jb51.net;
Kod di atas menambah koma bertitik selepas setiap pernyataan pengisytiharan , yang tidak memerlukan penjelasan lanjut.
var webName = "php中文网" var url = www.jb51.net
Sebenarnya, koma bertitik boleh ditinggalkan, tetapi koma bertindih yang ditinggalkan akan ditambah secara automatik semasa fasa penyusunan.
Mari kita lihat contoh kod:
function done(webName){ return webName } console.log(done("php中文网"));
Memandangkan pengkompil secara automatik menambah koma bertitik selepas setiap baris, nilai output ialah: tidak ditentukan, bukan "php Chinese net".
Di atas ialah keseluruhan kandungan bab ini Untuk lebih banyak tutorial berkaitan, sila lawati Tutorial Video JavaScript!