Rumah > hujung hadapan web > tutorial js > Struktur leksikal bacaan teras javascript_pengetahuan asas

Struktur leksikal bacaan teras javascript_pengetahuan asas

WBOY
Lepaskan: 2016-05-16 16:16:24
asal
1161 orang telah melayarinya

Struktur leksikal bahasa pengaturcaraan ialah set peraturan asas yang menerangkan cara anda menulis bahasa tersebut. Sebagai asas sintaks, ia menetapkan rupa nama pembolehubah, cara menulis ulasan, dan cara membezakan antara pernyataan. Bahagian ini menggunakan ruang yang sangat singkat untuk memperkenalkan struktur leksikal JavaScript.

1. Set watak

Atur cara Javascript ditulis menggunakan set aksara Unicode, yang merupakan superset ASCII dan Latin-1 serta menyokong hampir semua bahasa di rantau ini. ECMAscript3 memerlukan pelaksanaan javascript mesti menyokong Unicode2,1 dan versi seterusnya, dan ECMAscript5 memerlukan sokongan Unicode3 dan versi seterusnya

i. Sensitif huruf besar/kecil

Javascript ialah bahasa sensitif huruf besar-besaran, yang bermaksud kata kunci, pembolehubah, nama fungsi dan semua aksara ekspresi mestilah dalam huruf besar dan kecil yang konsisten Contohnya, kata kunci while mesti ditulis sebagai while, bukan While atau WHILE.

Tetapi harus diingat bahawa html tidak sensitif huruf besar-besaran (walaupun xhtml adalah kerana ia berkait rapat dengan javascript sisi klien, ia mudah untuk dikelirukan. Contohnya, dalam set peristiwa pemprosesan dalam HTML, atribut onclick boleh ditulis sebagai onClick, tetapi dalam JavaScript, onclick ditulis dalam huruf kecil.

ii Kawalan ruang, baris baharu dan format

Javascript akan mengabaikan ruang antara token dalam program Dalam kebanyakan kes, JavaScript juga akan mengabaikan baris baharu. Memandangkan ruang dan baris baharu boleh digunakan secara bebas dalam kod, lekukan yang kemas dan konsisten boleh digunakan untuk membentuk gaya pengekodan bersatu dan meningkatkan kebolehbacaan kod.

Javascript mengenali aksara ruang (u0020) sebagai tambahan kepadanya. JavaScript juga mewakili aksara berikut yang menandakan ruang: tab mendatar (u0009), tab menegak (u000B), suapan borang (u000C), ruang kosong tanpa putus (u00A0), tanda endian (uFEFF) dan Semua aksara kategori Zs dalam Unicode. JavaScript mengenali aksara berikut sebagai penamat: suapan baris (u000A), pemulangan pengangkutan (u000D), pemisah baris (u2028) dan pemisah perenggan (u2029). Aksara pemulangan pengangkutan dan aksara suapan baris bersama-sama dihuraikan menjadi satu penamat baris.

Aksara kawalan format Unikod (kelas Cf), seperti "tanda tulisan kanan ke kiri" (u200F) dan "tanda tulisan kiri ke kanan" (u200E), kawal paparan visual teks. Ini penting untuk paparan yang betul bagi beberapa teks bukan bahasa Inggeris. Aksara ini boleh digunakan dalam ulasan JavaScript, literal rentetan dan literal ungkapan biasa, tetapi bukan dalam pengecam (contohnya, nama pembolehubah , dengan pengecualian lebar sifar). penyambung (u200D) dan bukan penyambung lebar sifar (uFEFF), iaitu aksara tangan yang boleh muncul dalam pengecam tetapi tidak boleh digunakan sebagai pengecam. Seperti yang dinyatakan di atas, aksara kawalan format tanda pesanan bait (uFEFF) dianggap sebagai ruang

iii.Urutan melarikan diri Unikod

Dalam sesetengah perkakasan dan perisian komputer, set penuh aksara Unicode tidak boleh dipaparkan atau dimasukkan. Untuk menyokong pengaturcara yang menggunakan teknologi lama, JavaScript mentakrifkan urutan khas yang menggunakan 6 aksara ASCII untuk mewakili sebarang kod dalaman Unicode 16-bit. Urutan melarikan diri Unicode ini diawali dengan u diikuti dengan tetikus heksadesimal (diwakili menggunakan nombor dan huruf besar dan kecil A-F). Kaedah penulisan melarikan diri Unicode ini boleh digunakan dalam literal rentetan JavaScript, ungkapan biasa dan pengecam (kecuali kata kunci). Sebagai contoh, kaedah penulisan melarikan diri Unicode bagi aksara ialah u00E9, dan dua rentetan Javascript berikut adalah sama.

"kafe" === "cafu00e9" => benar
Tulisan melarikan diri Unicode boleh muncul dalam ulasan, tetapi memandangkan JavaScript mengabaikan ulasan, ia hanya dianggap sebagai aksara ascii dalam konteks dan tidak akan diikuti oleh aksara Unicode yang sepadan

iiii penyeragaman

Unicode membenarkan berbilang kaedah untuk mengekod aksara yang sama. Sebagai contoh, aksara é boleh menggunakan aksara Unicode u00E9, atau aksara ascii biasa e diikuti dengan simbol intonasi u0301 Dalam editor teks, hasil yang dipaparkan oleh kedua-dua pengekodan ini adalah sama, tetapi perwakilan pengekodan binari mereka adalah berbeza. Perkara yang sama berlaku dalam komputer. Standard Unicode mentakrifkan format kod pilihan untuk aksara indeks dan menyediakan kaedah pemprosesan piawai untuk menukar teks kepada format standard yang sesuai untuk perbandingan. Ia tidak akan menyeragamkan perwakilan, rentetan atau ungkapan biasa.

2. Nota

Javascript menyokong dua kaedah ulasan Teks selepas penghujung baris "//" akan diabaikan oleh JavaScript sebagai ulasan.
Selain itu, teks antara /* dan */ juga akan dianggap sebagai ulasan. Ulasan jenis ini boleh ditulis merentas baris, tetapi tidak boleh ada ulasan bersarang.

//Ulasan baris tunggal
/*
*
*
*
*/
3. Pengukuran langsung

Apa yang dipanggil literal ialah nilai data yang digunakan secara langsung dalam program Kuantiti literal disenaraikan di bawah

Salin kod Kod adalah seperti berikut:

12 //Nombor
                   1.2 //Perpuluhan
"Hllo World" //Teks rentetan
              'hai' //Rentetan lain
                 benar //Nilai Boolean
                  palsu //Nilai Boolean
/ Javascript / gi // ungkapan biasa kuantiti langsung (padanan mod padanan)
                                                                                                                                                                                                                                                                                                  null
Bab 3 akan menerangkan nombor dan literal rentetan secara terperinci. Literal ungkapan biasa akan diterangkan dalam Bab 10. Lebih banyak ungkapan boleh ditulis sebagai tatasusunan atau literal objek.

{x:1,y:2} //Objek

                          [1,2,3,4,5] //Array

4. Pengecam dan perkataan terpelihara

Pengecam ialah nama. Dalam JavaScript, pengecam digunakan untuk menamakan pembolehubah dan fungsi, atau untuk menandakan lokasi lompatan dalam pernyataan gelung tertentu dalam kod JavaScript. Pengecam JavaScript mesti bermula dengan huruf. Mulakan dengan garis bawah atau tanda dolar. Aksara seterusnya boleh menjadi huruf. nombor. Garis bawah atau tanda dolar (nombor tidak dibenarkan muncul sebagai huruf pertama, JavaScript boleh membezakan pengecam dan nombor dengan mudah), berikut ialah pengecam sah

Salin kod Kod adalah seperti berikut:
nama_pembolehubah_saya
              b13
               _dummy
               $str

Atas sebab mudah alih dan kemudahan penulisan, kami biasanya hanya menggunakan huruf dan nombor ASCII untuk menulis pengecam. Maka perlu diingatkan bahawa JavaScript membenarkan huruf dan nombor dalam set aksara Unicode untuk muncul dalam pengecam (secara teknikal, ECMAScript membenarkan kelas Mn, kelas Mc dan kelas P mekanisme aksara Unicode muncul selepas aksara pertama pengecam), Oleh itu, pengaturcara boleh menggunakan bahasa bukan Inggeris atau tatatanda matematik untuk menulis pengecam

Salin kod Kod adalah seperti berikut:
var sá = benar;
            var π = 3.14;

Javascript mengeluarkan beberapa pengecam dan menggunakannya sebagai kata kunci, jadi anda tidak lagi boleh menggunakan kata kunci ini sebagai pengecam dalam program.

Salin kod Kod adalah seperti berikut:
putus
kes
tangkap
teruskan
lalai
padamkan
lakukan
lain
akhirnya
untuk
fungsi
jika
dalam
instanceof
baharu
kembali
suis
ini
buang
cuba
jenis
var
batal
sementara
dengan

perkataan simpanan javascript

kelas const enum eksport
eksport melanjutkan import super
Selain itu, kata kunci ini adalah sah dalam javascript biasa, tetapi adalah perkataan terpelihara dalam mod ketat

melaksanakan membiarkan awam swasta menghasilkan pakej antara muka
statik dilindungi
Dalam mod ketat yang sama, sekatan ketat diletakkan pada pengecam berikut, tetapi nama pembolehubah, nama parameter dan nama fungsi tidak boleh digunakan.

hujah eval
Pelaksanaan khusus JavaScript mungkin mentakrifkan pembolehubah dan fungsi global yang unik Setiap pelayan persekitaran (klien) berjalan JavaScript tertentu, dsb. mempunyai senarai atribut globalnya sendiri, yang perlu diingat. (objek tetingkap untuk memahami pembolehubah global dan senarai fungsi yang ditakrifkan dalam javascript klien)

5. Koma bertitik pilihan

Seperti kebanyakan bahasa pengaturcaraan, JavaScript menggunakan koma bertitik (;) untuk memisahkan pernyataan. Ini sangat penting untuk meningkatkan kebolehbacaan dan kekemasan kod Penghujung satu pernyataan menjadi permulaan pernyataan seterusnya tanpa pemisah, dan sebaliknya.
Dalam JavaScript, setiap pernyataan berada pada barisnya sendiri dan koma bernoktah antara pernyataan biasanya boleh diabaikan (koma bernoktah sebelum pendakap kerinting "}" pada penghujung program juga boleh diabaikan). Banyak pengaturcara JavaScript (termasuk contoh kod dalam buku ini) menggunakan titik koma bertitik untuk menandai penghujung pernyataan dengan jelas, walaupun koma bertitik tidak diperlukan dengan tepat gunakan koma bertitik hanya apabila anda perlu. Tidak kira gaya pengaturcaraan anda, terdapat beberapa butiran yang perlu diberi perhatian tentang JavaScript.
Dalam kod berikut, koma bertitik pertama boleh diabaikan

a=3;
b=4;
Tetapi jika ia ditulis dalam format berikut, koma bertitik pertama tidak boleh ditinggalkan.

a=3;b=4;
Perlu diingatkan bahawa JavaScript tidak mengisi koma bertitik pada semua pemisah baris: JavaScript akan mengisi koma bertitik hanya apabila kod tidak boleh dihuraikan secara normal tanpa koma bertitik Dengan kata lain (sama dengan dua tempat dalam kod di bawah) Pengecualian). jika penyataan semasa dan aksara bukan ruang seterusnya tidak dapat dihuraikan secara keseluruhan, JavaScript akan mengisi koma bernoktah pada penghujung penyataan semasa, lihat kod berikut

var a
a
          =
3
console.log(a)
javascript menghuraikannya sebagai

var a;a=3;console.log(a); JavaScript menambah koma bertitik pada baris pertama Tanpa koma bertitik, JavaScript tidak boleh menghuraikan var a dalam kod. A kedua boleh dianggap sebagai pernyataan berasingan "a;", tetapi JavaScript tidak mengisi koma bernoktah pada penghujung baris kedua. Kerana ia boleh dihuraikan menjadi "a=3;" bersama baris ketiga kandungan.

Sesetengah peraturan pemisahan pernyataan akan membawa kepada beberapa situasi yang tidak dijangka ini dibahagikan kepada dua baris, yang kelihatan seperti dua pernyataan bebas.

var y = x f

             (a b).toString()
Tanda kurung dalam baris kedua dan f dalam baris pertama membentuk panggilan fungsi JavaScript akan menganggap kod ini sebagai

var y = x f(a b).toString();

Jelas sekali ini bukan niat kod Untuk menghuraikan kod di atas kepada dua penyataan berbeza, koma bertitik paparan tingkah laku mesti diisi secara manual

Secara umumnya, jika sesuatu pernyataan bermula dengan ( [ / -, maka ia berkemungkinan besar akan dihuraikan bersama dengan pernyataan sebelumnya. Pernyataan yang bermula dengan / - tidak begitu biasa, tetapi pernyataan yang bermula dengan ( [ adalah sangat biasa . Sekurang-kurangnya ia adalah perkara biasa dalam beberapa gaya pengekodan JavaScript Sesetengah pengaturcara suka menambahkan koma bertitik di hadapan penyataan secara konservatif Dengan cara ini, walaupun penyataan sebelumnya disemak dan koma bernoktah dipadamkan secara tidak sengaja, penyataan semasa masih. yang sama. Ia akan dihuraikan dengan betul; Jika pernyataan semasa dan baris pernyataan seterusnya tidak boleh digabungkan dan dihuraikan. JavaScript kemudian meletakkan koma bertitik selepas baris pertama, yang merupakan peraturan umum, kecuali dua lajur. Pengecualian pertama melibatkan pernyataan returnm, birak, dan continue, jika ketiga-tiga kata kunci ini diikuti oleh baris baharu. JavaScript akan mengisi titik bertitik pada pemisah baris. Contohnya


Contohnya

kembali

benar;

Dan javascript dihuraikan menjadi

kembali; sifat;

Maksud asal kod ialah


kembali benar;

Maksudnya, tidak boleh ada pemisah baris antara ungkapan pengembalian, pemisah dan penyambungan berikutnya Jika pemisah baris ditambah, program hanya akan melaporkan ralat dalam keadaan yang sangat istimewa. Dan penyahpepijatan program ini sangat menyusahkan.


Contoh kedua melibatkan operator --, simbol ungkapan ini boleh mewakili awalan dan akhiran untuk ungkapan pengecam. Jika ia digunakan sebagai ungkapan akhiran, maka ia digunakan sebagai ungkapan akhiran. Ia dan ungkapan harus dilihat pada satu baris. Jika tidak, hujung baris akan dilapisi dengan koma bertitik.

x

yy

Kod di atas dihuraikan menjadi

Salin kod Kod adalah seperti berikut:

x;
y
Label berkaitan:
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