Rumah >hujung hadapan web >tutorial js >Bagaimanakah Sisipan Titik Bertitik Automatik (ASI) JavaScript Berfungsi dan Bagaimana Saya Boleh Mengelak Masalahnya?

Bagaimanakah Sisipan Titik Bertitik Automatik (ASI) JavaScript Berfungsi dan Bagaimana Saya Boleh Mengelak Masalahnya?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-24 05:42:15749semak imbas

How Does JavaScript's Automatic Semicolon Insertion (ASI) Work and How Can I Avoid Its Pitfalls?

Peraturan Penyisipan Titik Bertitik Automatik (ASI) JavaScript

ASI JavaScript ialah ciri yang boleh memasukkan koma bertitik secara automatik pada penghujung pernyataan tertentu jika tiada. Ini boleh berguna dalam beberapa kes, tetapi ia juga boleh membawa kepada pepijat.

Pernyataan Terpengaruh oleh ASI

ASI digunakan pada jenis pernyataan berikut:

  • Pernyataan kosong
  • Pernyataan Var
  • Ekspresi pernyataan
  • Kenyataan buat sambil
  • Teruskan pernyataan
  • Potong pernyataan
  • Kembalikan pernyataan
  • Baling pernyataan

Peraturan ASI

Peraturan khusus untuk ASI adalah seperti berikut:

  1. Jika token tidak sah ditemui yang tidak dibenarkan oleh tatabahasa, koma bernoktah dimasukkan sebelumnya jika:

    • Token dipisahkan daripada token sebelumnya dengan sekurang-kurangnya satu pemisah baris.
    • Token ialah pendakap kerinting penutup (}).
  2. Apabila penghujung aliran masukan token ditemui dan penghurai tidak boleh menghuraikan aliran token input sebagai satu atur cara lengkap, koma bernoktah dimasukkan secara automatik pada penghujung daripada aliran input.
  3. Jika token dibenarkan oleh tatabahasa, tetapi pengeluaran adalah pengeluaran terhad, koma bernoktah dimasukkan secara automatik sebelum token terhad.

Pengeluaran terhad termasuk:

  • Kemas kini ungkapan ( , --)
  • Teruskan kenyataan
  • Potong kenyataan
  • Kembalikan kenyataan
  • Baling pernyataan
  • Fungsi anak panah
  • Ekspresi hasil

Contoh

Contoh 1:

{ 1
2 } 3

ASI akan mengubah kod ini kepada:

{ 1
;2 ;} 3;

Contoh 2:

a = b
++c

ASI akan mengubah kod ini kepada:

a = b;
++c;

Contoh 3 :

return
"something";

ASI akan mengubah kod ini kepada:

return;
"something";

Mengelakkan Pepijat ASI

ASI boleh menjadi ciri yang berguna, tetapi ia juga boleh membawa kepada pepijat. Untuk mengelakkan pepijat ASI, sebaiknya sentiasa menggunakan koma bertitik secara eksplisit pada akhir setiap pernyataan.

Atas ialah kandungan terperinci Bagaimanakah Sisipan Titik Bertitik Automatik (ASI) JavaScript Berfungsi dan Bagaimana Saya Boleh Mengelak Masalahnya?. 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