Konsep Dasar
JavaScript adalah bahasa yang ditafsirkan, dan browser bertindak sebagai penerjemah. Saat mengeksekusi JS, dijelaskan terlebih dahulu dan kemudian dieksekusi dalam ruang lingkup yang sama. Saat menafsirkan, variabel yang ditentukan oleh dua kata kunci fungsi dan VAR akan dikompilasi. Setelah kompilasi selesai, variabel akan dieksekusi dari atas ke bawah dan nilai yang ditetapkan.
Sensitif Kasus
Segala sesuatu dalam ecmascript (termasuk variabel, nama fungsi, dan operator) sensitif.
1. Variabel
Variabel diatur dalam memori ketika pertama kali digunakan, sehingga kemudian dirujuk dalam skrip. Menyatakannya sebelum menggunakan variabel. Deklarasi variabel dapat digunakan menggunakan kata kunci VAR.
var count, jumlah, level; // Beberapa deklarasi dideklarasikan dengan kata kunci VAR tunggal.
Penamaan variabel
Nama variabel termasuk variabel global, variabel lokal, variabel kelas, parameter fungsi, dll. Mereka semua termasuk dalam kategori ini.
Penamaan variabel terdiri dari awalan tipe + kata -kata yang bermakna, dan keterbacaan variabel dan fungsi meningkat oleh nomenklatur unta. Misalnya: Susername, ncount.
Spesifikasi awalan:
Setiap variabel lokal perlu memiliki awalan jenis, yang dapat dibagi menjadi:
S: mewakili string. Misalnya: SNAME, SHTML;
N: mewakili angka. Misalnya: npage, ntotal;
B: mewakili logika. Misalnya: Bchecked, bhaslogin;
A: mewakili array. Misalnya: alist, agroup;
R: mewakili ekspresi reguler. Misalnya: rdomain, remail;
F: mewakili suatu fungsi. Misalnya: fgetHtml, finit;
O: mewakili benda lain yang tidak disebutkan di atas, seperti: Obutton, Odate;
G: mewakili variabel global, seperti: gusername, gloginime;
JScript adalah bahasa yang sensitif terhadap kasus. Membuat nama variabel yang sah harus mengikuti aturan berikut:
Perhatikan bahwa karakter pertama tidak bisa menjadi angka.
Ini dapat diikuti dengan huruf atau nomor apa pun dan garis bawah, tetapi tidak bisa menjadi nama variabel ruang, itu tidak boleh menjadi kata yang dipesan.
Javascript adalah bahasa yang diketik dengan lemah, dan Javascript mengabaikan ruang yang tidak perlu. Anda dapat menambahkan spasi ke skrip untuk meningkatkan keterbacaannya.
VAR adalah kata yang dipesan untuk JavaScript, menunjukkan bahwa berikut ini adalah deskripsi variabel, nama variabel adalah pengidentifikasi yang ditentukan pengguna, dan variabel dipisahkan oleh koma.
Jika suatu variabel dinyatakan tetapi tidak ada nilai yang ditetapkan untuk itu, variabel ada dan nilainya adalah nilai JScript yang tidak ditentukan.
Konversi Jenis Kasus
Dalam JScript, operasi dapat dilakukan pada berbagai jenis nilai tanpa khawatir tentang pengecualian dari juru bahasa JScript. Sebagai gantinya, interpreter JScript secara otomatis mengubah (cors) salah satu tipe data ke tipe data lain dan kemudian melakukan operasi. Misalnya:
Hasil perhitungan
Menambahkan nilai ke string melemparkan nilai ke string.
Menambahkan nilai boolean ke string melemparkan nilai boolean ke string.
Menambahkan nilai numerik ke nilai boolean melemparkan nilai boolean ke nilai numerik.
Untuk secara eksplisit mengonversi string ke integer, gunakan metode ParseInt. Untuk secara eksplisit mengonversi string ke angka, gunakan metode parsefloat.
Seumur Hidup Variabel JavaScript: Ketika Anda mendeklarasikan variabel dalam suatu fungsi, Anda hanya dapat mengakses variabel dalam fungsi itu. Saat keluar dari fungsi, variabel ini akan dicabut. Variabel ini disebut variabel lokal. Anda dapat menggunakan variabel lokal dengan nama yang sama dalam fungsi yang berbeda, karena hanya fungsi yang menyatakan variabel yang dapat mengenali setiap variabel.
Jika Anda mendeklarasikan variabel di luar suatu fungsi, semua fungsi pada halaman dapat mengakses variabel. Masa hidup variabel -variabel ini dimulai setelah mereka dinyatakan dan berakhir ketika halaman ditutup.
peta pikiran variabel js
2. Tipe Data JS
JScript memiliki tiga jenis -> tipe data utama, dua -> tipe data komposit dan dua -> tipe data khusus.
Jenis Data Utama (Dasar)
Rangkaian
Nilai
Boole
Jenis Data Komposit (Referensi)
Obyek
Array
Tipe data khusus
Batal
`Tidak terdefinisi`
Tipe Data String: Jenis data string digunakan untuk mewakili teks dalam JScript. Dalam JS, sementara kedua penawaran ganda ("") dan satu kutipan (") dapat mewakili string, dan mereka memiliki sedikit perbedaan. Menggunakan kutipan ganda (" ") untuk mewakili string dianggap yang terbaik.
Nilai string adalah string nol atau lebih banyak karakter unicode (huruf, angka, dan tanda baca) yang diatur bersama.
Apa itu Unicode?
Unicode memberikan nilai -nilai unik untuk setiap karakter, terlepas dari platform, program, atau bahasa. Unicode dikembangkan untuk memberikan pengkodean terpadu untuk memproses semua karakter yang ada di dunia.
Tipe data numerik
Kita perlu memahami bahwa JScript secara internal mewakili semua nilai sebagai nilai titik mengambang, sehingga tidak ada perbedaan antara bilangan bulat dan nilai titik mengambang dalam JScript.
Tipe data boolean
Boolean (logis) hanya dapat memiliki dua nilai: benar atau salah.
Array dan objek JS
Untuk detailnya, silakan lihat artikel saya -> Ringkasan Pembelajaran JavaScript - Array dan Bagian Objek
Tipe Data NULL: Anda dapat menghapus konten variabel dengan menetapkan nilai nol ke variabel.
Operator TypeOF dalam JScript akan melaporkan bahwa nilai nol adalah tipe objek, bukan ketik nol.
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"><head> <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> <title></title> <script type="text/javascript"> alert(typeof null); </script> </head> <body> </body> </html>
NULL digunakan untuk mewakili objek yang belum ada, dan sering digunakan untuk mewakili fungsi yang mencoba mengembalikan objek yang tidak ada.
Jenis data yang tidak ditentukan:
Nilai yang tidak ditentukan akan dikembalikan dalam situasi berikut:
Atribut objek tidak ada.
Variabel dinyatakan tetapi nilainya tidak pernah ditetapkan.
Perbedaan antara nol dan tidak terdefinisi
waspada (typeof tidak ditentukan); // output peringatan "tidak terdefinisi" (typeof null); // output "objek" peringatan (null == tidak ditentukan); // output "true"
Ecmascript percaya bahwa tidak terdefinisi berasal dari nol, sehingga mereka didefinisikan sebagai sama.
peringatan (null === tidak ditentukan); // output "false" alert (typeOf null == typeof tidak ditentukan); // output "false"
Jenis -jenis nol dan tidak terdefinisi berbeda, sehingga outputnya "salah". Dan === berarti kesetaraan absolut, di sini null === output yang tidak ditentukan salah
Selain itu, berikut adalah tipe data yang relatif penting - tipe data referensi
Tipe Data Referensi
JavaScript Referensi Data Tipe adalah objek yang disimpan dalam memori heap. JavaScript tidak mengizinkan akses langsung ke lokasi dan pengoperasian ruang memori tumpukan. Ini hanya dapat mengoperasikan alamat referensi objek dalam memori tumpukan. Jadi data jenis referensi sebenarnya disimpan dalam memori tumpukan sebagai alamat referensi objek dalam memori heap. Alamat referensi ini memungkinkan Anda untuk dengan cepat menemukan objek yang disimpan dalam memori heap.
Mari kita tunjukkan proses mengutip penugasan tipe data
Tentu saja, menambahkan atribut nama ke OBJ2 sebenarnya menambahkan atribut nama ke objek dalam memori heap. OBJ2 dan OBJ1 hanya menyimpan alamat referensi objek memori heap di memori tumpukan. Meskipun mereka juga disalin, objek yang diarahkan adalah sama. Oleh karena itu, perubahan OBJ2 menyebabkan perubahan OBJ1.
Nilai tipe dasar mengacu pada segmen data sederhana yang disimpan dalam memori tumpukan, yaitu, lokasi di mana nilai -nilai tersebut sepenuhnya disimpan dalam memori.
Nilai tipe referensi mengacu pada objek -objek yang disimpan dalam memori heap, yaitu variabel sebenarnya hanya pointer, yang menunjuk ke lokasi lain dalam memori, di mana objek disimpan.
Singkatnya, memori heap menyimpan nilai referensi, dan memori stack menyimpan nilai tipe tetap.
Dalam ecmascript, variabel dapat memiliki dua jenis nilai, yaitu nilai asli dan nilai referensi.
Nilai -nilai asli disimpan dalam tumpukan, yang berarti bahwa nilai -nilai mereka disimpan langsung di lokasi di mana variabel diakses. Objek yang direferensikan yang disimpan dalam tumpukan, yaitu nilai yang disimpan pada variabel adalah pointer yang menunjuk ke memori di mana objek disimpan.
<script type = "text/javascript"> var box = objek baru (); // Buat jenis referensi var box = "lee"; // Nilai tipe dasar adalah kotak string.age = 23; // aneh untuk menambahkan atribut ke nilai tipe dasar, karena hanya objek yang dapat menambahkan atribut. alert (box.age); // Ini bukan jenis referensi, dan tidak bisa output; </script>
3. Operator Jeskrip
Prioritas: Mengacu pada urutan operasi operator. Dalam istilah awam, itu adalah untuk menghitung bagian mana dari operasi terlebih dahulu.
Kombinasi: Urutan perhitungan operator prioritas yang sama, dalam istilah awam, apakah dari arah mana untuk menghitung, apakah itu dari kiri ke kanan atau kanan ke kiri.
Konversi tipe data dan jenis pembungkus dasar
String () ke string type
Angka () ke jenis angka
Boolean () untuk tipe boolean
Parseint: Konversi string ke integer. Mulai parsing dari awal string, hentikan parsing pada posisi non-integer pertama, dan kembalikan semua bilangan bulat yang dibaca sebelumnya. Jika string tidak dimulai dengan bilangan bulat, NAN akan dikembalikan. Misalnya: Nilai yang dikembalikan oleh ParseInt ("150 HI") adalah: 150, dan nilai yang dikembalikan oleh ParseInt ("HI") adalah: NAN.
Parsefloat: Mengonversi string ke nomor titik mengambang. Mulai parsing dari awal string, hentikan parsing pada posisi non-integer pertama, dan kembalikan semua bilangan bulat yang dibaca sebelumnya. Jika string tidak dimulai dengan bilangan bulat, NAN akan dikembalikan. Sebagai contoh: parsefloat ("15.5 hai") mengembalikan nilai: 15.5, dan parsefloat ("hai 15.5") mengembalikan nilai: nan.
Eval: Menghitung string sebagai ekspresi JavaScript dan mengembalikan hasil eksekusi, dan mengembalikan tidak terdefinisi jika tidak ada hasil.
Jenis kemasan dasar
Setiap kali nilai tipe dasar dibaca, latar belakang akan membuat objek dari tipe pembungkus dasar yang sesuai, sehingga beberapa metode dapat dipanggil untuk memanipulasi data ini. Jenis kemasan dasar termasuk boolean, angka, dan string
var box = 'trigkit4'; // box box.name = 'mike'; // Atribut tidak valid box.age = function () {// Metode tidak valid return 22;}; // Operator baru menulis var box = string baru ('trigkit4'); // box operator baru.name = 'mike'; // Atribut valid box.age = function () {// metode valid return 22;};Jenis string berisi tiga properti dan sejumlah besar metode bawaan yang tersedia
Deskripsi atribut
Panjang: Mengembalikan panjang karakter string
Konstruktor: Mengembalikan fungsi yang membuat objek string
Prototipe: Perluas definisi string dengan menambahkan properti dan metode
4. Kontrol proses JS
Untuk pernyataan kontrol proses JS, berikut ini hanya beberapa yang sulit dipahami. Saya tidak akan membahas detail tentang yang lain. Peta pikiran terpasang di bawah ini.
1. untuk ... dalam pernyataan mengeksekusi satu atau lebih pernyataan yang sesuai dengan masing -masing objek, atau setiap elemen array.
untuk (variabel dalam [objek | array])
pernyataan
parameter:
Variabel: Opsi yang diperlukan. Variabel yang dapat berupa atribut suatu objek atau elemen apa pun dari suatu array.
Objek, Array: Opsional. Objek atau array untuk melintasi itu.
Pernyataan: Opsional. Satu atau lebih pernyataan yang akan dieksekusi relatif terhadap setiap properti dari suatu objek atau setiap elemen dari suatu array. Ini bisa menjadi pernyataan majemuk.
Meskipun pernyataan kontrol bersyarat (seperti Pernyataan IF) memerlukan penggunaan blok kode hanya ketika beberapa pernyataan dieksekusi (akhir kawat gigi kiri "{" Mulai, kawat gigi kanan "}"), praktik terbaik adalah selalu menggunakan blok kode.
if (args) alert (args); // mudah kesalahan jika (args) {waspada (args); // disarankan untuk menggunakan}5. Fungsi JS
Fungsi adalah blok kode yang dapat digunakan kembali yang didorong oleh suatu peristiwa atau dieksekusi saat dipanggil.
JScript mendukung dua fungsi: satu adalah fungsi di dalam bahasa, dan yang lainnya dibuat dengan sendirinya.
Fungsi JavaScript tidak memungkinkan parameter (tetapi tanda kurung yang berisi parameter tidak dapat dihilangkan), dan parameter dapat diteruskan ke fungsi untuk digunakan berdasarkan fungsi.
Untuk informasi lebih lanjut tentang fungsi, silakan kunjungi artikel lain dari artikel saya: Ringkasan Bagian Fungsi Pembelajaran JavaScript (IV)
Komposisi objek
Metode - Fungsi: Prosedural, Dinamis
Atribut - Variabel: status, statis
Akhirnya, peta pikiran yang dirangkum oleh para senior:
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.