Rumah > Artikel > hujung hadapan web > Apakah perbezaan antara ecmascript5 dan 6
Perbezaan antara ecmascript5 dan 6: 1. Skop peringkat blok baru ditambahkan dalam ecmascript6, tetapi tidak dalam ecmascript5 2. Parameter fungsi lalai boleh ditetapkan dalam ecmascript6, tetapi bukan dalam ecmascript5; Fungsi anak panah boleh digunakan, tetapi tiada fungsi anak panah dalam ecmascript5.
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi ECMAScript 6.0&&ECMAScript 5.0, komputer Dell G3.
ECMAScripts5, atau ES5, ialah semakan kelima ECMAScripts, yang telah diseragamkan pada tahun 2009. ECMAScripts6, atau ES6, ialah semakan keenam ECMAScripts, yang telah disiapkan pada tahun 2009. Disiapkan pada tahun 2025, juga dikenali sebagai ES2015ES6 ialah peningkatan selepas ES5, ia lebih ringkas dan meningkatkan kecekapan pembangunan Beberapa ciri baharu ES6:
1) biarkan mengisytiharkan pembolehubah dan const mengisytiharkan pemalar, dua Terdapat skop peringkat blok Tiada skop peringkat blok dalam ES5, dan var mempunyai promosi berubah Dalam let, pembolehubah yang digunakan mesti diisytiharkan
2) Fungsi fungsi anak panah. definisi dalam ES6 bukan lagi Gunakan fungsi kata kunci(), tetapi gunakan ()=> untuk mentakrifkan
3) Rentetan templat Rentetan templat ialah versi rentetan yang dipertingkatkan, ditandakan dengan tanda belakang (`; dan boleh digunakan sebagai Digunakan sebagai rentetan biasa, ia juga boleh digunakan untuk mentakrif rentetan berbilang baris
4) Tugasan memusnahkan ES6 membolehkan mengekstrak nilai daripada tatasusunan dan objek mengikut corak tertentu dan menetapkan nilai kepada pembolehubah
5 )... Operator pengembangan boleh mengembangkan nilai dalam tatasusunan atau objek ia juga boleh mengumpul berbilang nilai ke dalam pembolehubah
seperti berikut:
Fungsi anak panah baharu
Tulisan ringkas. Fungsi anak panah sesuai apabila badan fungsi hanya mempunyai satu baris apabila terdapat berbilang baris, fungsi biasa boleh digunakan untuk meningkatkan kebolehbacaan. Kurang pengekodan, struktur yang jelas
Kosongkan ini. JS tradisional ini ditentukan pada masa jalan, bukan pada definisi manakala fungsi anak panah ini ditentukan pada definisi dan tidak boleh diubah, dan ia juga tidak boleh diubah suai dengan kaedah seperti memanggil, memohon dan mengikat. Jelaskan kepada siapa ini menunjuk pada masa jalan, dan tidak perlu menilai pada masa jalan bahawa ini menunjuk kepada
Nota: Fungsi anak panah tidak mempunyai ini sendiri, ini adalah bahagian luar ini kepada ini fungsi sebelumnya yang bukan fungsi anak panah. Kerana mekanisme js, ia menunjuk kepada skop fungsi yang bukan fungsi anak panah.
Perbezaan antara fungsi anak panah dan fungsi biasa
Pengisytiharan fungsi biasa adalah yang tertinggi dalam pengangkatan berubah-ubah, manakala fungsi anak panah tidak mempunyai fungsi pengangkat
Fungsi anak panah tidak mempunyai ini Objek ini di dalam badan fungsi ialah objek apabila ia ditakrifkan dan bukannya objek apabila ia digunakan
The. Fungsi anak panah tidak mempunyai objek argumen. Objek ini tidak wujud dalam badan fungsi Jika anda ingin menggunakannya, anda boleh menggunakan parameter selebihnya
Fungsi anak panah. tidak boleh digunakan sebagai pembina, tidak boleh baharu dan tidak mempunyai harta
Kaedah panggilan dan guna hanya mempunyai parameter dan tiada skop
Arahan hasil tidak boleh digunakan, jadi fungsi anak panah tidak boleh digunakan sebagai fungsi penjana
Skop peringkat blok
Arahan let dalam ES6 mengisytiharkan pembolehubah, dan penggunaannya serupa dengan var, tetapi mari tambahkan skop peringkat blok baharu pada JavaScript Tiada skop peringkat blok dalam ES5 Dan var mempunyai konsep promosi berubah-ubah, tetapi dalam let, pembolehubah yang digunakan mestilah diisytiharkan; const mengisytiharkan pemalar
Penetapan struktur pembolehubah dalam ES6, contohnya: var [a,b,c] = [0 ,1,2];
Warisan kelas
ES6 tidak lagi menggunakan rantaian prototaip untuk melaksanakan pewarisan seperti ES5, tetapi memperkenalkan konsep Kelas, yang bunyinya serupa dengan Java Sintaks pengaturcaraan berorientasikan objek dalam agak serupa, tetapi kedua-duanya berbeza .
Pengetahuan lanjutan:
Perbezaan antara var, let dan const
Pembolehubah pengisytiharan Var boleh diisytiharkan berulang kali, tetapi biarkan tidak boleh diisytiharkan berulang kali
var tidak terhad kepada tahap blok, tetapi biarkan terhad kepada tahap blok
var akan dipetakan ke tetingkap (atribut akan dilampirkan), tetapi biarkan tidak dipetakan ke tetingkap
var boleh mengakses pembolehubah di atas perisytiharan, manakala let mempunyai zon mati sementara Mengakses pembolehubah di atas perisytiharan akan melaporkan ralat
const mesti diberikan nilai selepas pengisytiharan, jika tidak, ralat akan. dilaporkan
const Tentukan kuantiti tidak berubah dan ralat akan dilaporkan jika ia berubah
const, seperti let, tidak akan dipetakan ke tetingkap, menyokong skop peringkat blok dan ralat akan dilaporkan apabila mengakses pembolehubah di atas pengisytiharan
[Disyorkan Berkaitan: tutorial video javascript, bahagian hadapan web]
Atas ialah kandungan terperinci Apakah perbezaan antara ecmascript5 dan 6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!