Apakah maksud promosi pembolehubah javascript?
Dalam JavaScript, promosi pembolehubah bermaksud bahawa dalam skop pembolehubah, tidak kira di mana pembolehubah diisytiharkan, ia akan dinaikkan pangkat ke bahagian atas skop, tetapi susunan permulaan pembolehubah kekal tidak berubah. Pelaksanaan sebenar pengangkat pembolehubah ialah pembolehubah JavaScript dan pengisytiharan fungsi diletakkan ke dalam ingatan semasa fasa penyusunan.
Persekitaran pengendalian tutorial ini: sistem Windows 7, versi JavaScript 1.8.5, komputer Dell G3.
Apakah itu promosi berubah-ubah?
Pengangkatan pembolehubah ialah pemahaman orang ramai tentang cara konteks pelaksanaan JavaScript berfungsi dan bukan perubahan rasmi.
Difahamkan secara literal, promosi berubah bermakna pengisytiharan pembolehubah dan fungsi akan dialihkan ke hadapan skop dalam lapisan fizikal Walaupun pemahaman ini tidak tepat, kesannya adalah sama.
Dalam istilah orang awam, promosi pembolehubah bermaksud bahawa dalam skop pembolehubah, tidak kira di mana pembolehubah diisytiharkan, ia akan dinaikkan pangkat ke bahagian atas skop, tetapi susunan pemula pembolehubah kekal tidak berubah.
Pelaksanaan sebenar promosi pembolehubah ialah pembolehubah JavaScript dan pengisytiharan fungsi diletakkan ke dalam ingatan semasa fasa penyusunan. Ini bermakna pengguna boleh menggunakan fungsi atau pembolehubah sebelum ia diisytiharkan secara rasmi.
Untuk memahami pelaksanaan promosi berubah-ubah, kami mesti menjelaskan dua perkara berikut terlebih dahulu:
Kod JavaScript tidak dilaksanakan baris demi baris.
-
pelaksanaan javascript terbahagi kepada 2 langkah:
Kompilasi (tafsiran leksikal/pra-tafsiran)
Pelaksanaan
Promosi boleh ubah membantu memahami
console.log(a); var a = 'ghostwu';
Untuk contoh kod di atas, baris pertama kod, anda mungkin fikir Ralat dilaporkan kerana pembolehubah tidak ditakrifkan sebelum keluaran, tetapi hasil yang betul tidak ditentukan. Menurut penjelasan di atas tentang kod pelaksanaan js, digabungkan dengan kod sebenar, apabila kita menemui var a = "ghostwu" untuk menentukan pembolehubah, js sebenarnya menganggap ayat ini sebagai dua peringkat, var a berlaku dalam peringkat penyusunan , a = 'ghostwu' berlaku dalam fasa pelaksanaan Kemudian var a akan dinaikkan ke hadapan skop semasa, a = 'ghostwu' kekal di tempat menunggu fasa pelaksanaan, jadi lihat kes berikut:
a = 'ghostwu'; var a; console.log( a ); //上面这段代码经过编译之后,变成下面这样 var a; //被提升到当前作用域的最前面 a = 'ghostwu'; //留在原地,等待执行 console.log( a ); //输出ghostwu console.log( a ); var a = 'ghostwu'; //上面这段代码,经过编译之后,变成下面这样 var a; console.log( a );//输出undefined,而不会报错 a = 'ghostwu';
Promosi pengisytiharan fungsi
Sebelum menerangkan promosi pengisytiharan fungsi, mari kita fahami dua cara biasa untuk mentakrifkan fungsi
//函数声明, 形如: function show(){ console.log( '函数声明方式' ); } //函数表达式, 形如: var show = function(){ console.log( '表达式方式' ); }
Kerana ungkapan fungsi dan pengisytiharan fungsi akan mempunyai kesan tafsiran yang berbeza semasa fasa penyusunan, pengisytiharan fungsi akan dipromosikan sebagai contoh, lihat kod berikut:
show(); function show(){ console.log( a ); var a = 'ghostwu'; } //函数声明会被提升,所以上面的代码经过编译之后,就变成下面这样 function show(){ //函数声明被提升到 当前作用域的最前面 var a; //var声明被提升到当前作用域的最前面, 注意,他不会提升到函数的外面, 因为当前的作用域是在函数中 console.log( a ); a = 'ghostwu'; } show();//输出undefined
Tetapi ungkapan fungsi tidak akan Dipromosikan, lihat. pada contoh berikut:
show(); //报错,show is not a function var show = function(){ console.log( 'ghostwu' ); } //对于上面这段表达式代码,经过编译之后: var show; show(); //执行之后就是 undefined(), 所以在表达式定义之前,调用函数报错了 show = function(){ console.log( 'ghostwu' ); }
Tetapi lihat kes berikut:
show(); //你好 var show; function show(){ console.log( '你好' ); } show = function(){ console.log( 'hello' ); }
Mengapa kod di atas mengeluarkan "Hello", kerana apabila fungsi dengan nama yang sama muncul Apabila mengisytiharkan pembolehubah, pengisytiharan fungsi akan dipromosikan terlebih dahulu dan pengisytiharan pembolehubah akan diabaikan. Jadi selepas penyusunan, ia menjadi:
function show(){ console.log( '你好' ); } show(); //你好 show = function(){ console.log( 'hello' ); } show();//如果这里在调用一次,就是hello, 因为show函数体在执行阶段被重新赋值了
Tetapi jika terdapat pengisytiharan fungsi dengan nama yang sama, yang terakhir akan menimpa yang sebelumnya, seperti yang ditunjukkan dalam kod berikut:
show(); //how are you var show; function show(){ console.log( 'hello' ); } show = function(){ console.log( '你好' ); } function show(){ console.log( 'how are you!' ); } //上面的代码经过编译之后,变成如下形式: function show(){ console.log( 'how are you!' ); } show(); //how are you show = function(){ console.log( '你好' ); } show(); //如果在这里再执行一次,结果:你好
Nota:
Promosi pembolehubah hanya menggalakkan pengisytiharan pembolehubah dan tidak mempromosikan nilai tugasan.
Oleh kerana terdapat perkara seperti promosi berubah-ubah, untuk mengelakkan kesan buruk yang disebabkan oleh promosi berubah-ubah, lebih baik kita menggunakan let apabila mentakrifkan pembolehubah. bukannya var.
[Cadangan berkaitan: tutorial pembelajaran javascript]
Atas ialah kandungan terperinci Apakah maksud promosi pembolehubah javascript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

React adalah perpustakaan JavaScript yang dibangunkan oleh Meta untuk membina antara muka pengguna, dengan terasnya menjadi pembangunan komponen dan teknologi DOM maya. 1. Komponen dan Pengurusan Negeri: React menguruskan keadaan melalui komponen (fungsi atau kelas) dan cangkuk (seperti UseState), meningkatkan kebolehgunaan semula kod dan penyelenggaraan. 2. DOM maya dan pengoptimuman prestasi: Melalui DOM maya, bereaksi dengan cekap mengemas kini DOM sebenar untuk meningkatkan prestasi. 3. Kitaran Hidup dan Cangkuk: Cangkuk (seperti Useeffect) membolehkan komponen fungsi menguruskan kitaran hayat dan melakukan operasi kesan sampingan. 4. Contoh Penggunaan: Dari Komponen Helloworld Asas ke Pengurusan Negeri Global Lanjutan (USEContext dan

Ekosistem React termasuk perpustakaan pengurusan negeri (seperti redux), perpustakaan penghalaan (seperti reactrouter), perpustakaan komponen UI (seperti bahan-UI), alat ujian (seperti jest), dan alat bangunan (seperti webpack). Alat ini bekerjasama untuk membantu pemaju membangun dan mengekalkan aplikasi dengan cekap, meningkatkan kualiti kod dan kecekapan pembangunan.

React adalah perpustakaan JavaScript yang dibangunkan oleh Facebook untuk membina antara muka pengguna. 1. Ia mengamalkan teknologi DOM komponen dan maya untuk meningkatkan kecekapan dan prestasi pembangunan UI. 2. Konsep teras React termasuk komponenisasi, pengurusan negeri (seperti useState dan useeffect) dan prinsip kerja dom maya. 3. 4. Kesilapan umum seperti melupakan untuk menambah atribut utama atau kemas kini status yang salah boleh didebitkan melalui ReactDevTools dan log. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan react.memo, segmentasi kod dan menyimpan kod yang boleh dibaca dan mengekalkan kebolehpercayaan

Penggunaan React dalam HTML meningkatkan kecekapan dan fleksibiliti pembangunan web melalui komponen dan DOM maya. 1) Idea komponen reaksi memecah UI ke dalam unit yang boleh diguna semula untuk memudahkan pengurusan. 2) Prestasi pengoptimuman DOM maya, meminimumkan operasi DOM melalui algoritma yang berbeza. 3) Sintaks JSX membolehkan penulisan HTML dalam JavaScript untuk meningkatkan kecekapan pembangunan. 4) Gunakan cangkuk UseState untuk menguruskan keadaan dan merealisasikan kemas kini kandungan dinamik. 5) Strategi pengoptimuman termasuk menggunakan react.memo dan usecallback untuk mengurangkan rendering yang tidak perlu.

Fungsi utama React termasuk pemikiran komponen, pengurusan negeri dan dom maya. 1) Idea komponenisasi membolehkan pemisahan UI menjadi bahagian yang boleh diguna semula untuk meningkatkan kebolehbacaan kod dan kebolehkerjaan. 2) Pengurusan Negeri menguruskan data dinamik melalui negeri dan prop, dan perubahan mencetuskan kemas kini UI. 3) Prestasi Pengoptimuman DOM Maya, kemas kini UI melalui pengiraan operasi minimum Replika DOM dalam ingatan.

Kelebihan React adalah fleksibiliti dan kecekapannya, yang dicerminkan dalam: 1) Reka bentuk berasaskan komponen meningkatkan kebolehgunaan semula kod; 2) Teknologi DOM Maya mengoptimumkan prestasi, terutamanya apabila mengendalikan banyak kemas kini data; 3) Ekosistem yang kaya menyediakan sejumlah besar perpustakaan dan alat pihak ketiga. Dengan memahami bagaimana React Works dan menggunakan contoh, anda boleh menguasai konsep terasnya dan amalan terbaik untuk membina antara muka pengguna yang cekap dan boleh dipelihara.

React adalah perpustakaan JavaScript untuk membina antara muka pengguna, sesuai untuk aplikasi besar dan kompleks. 1. Inti React adalah komponen dan DOM maya, yang meningkatkan prestasi rendering UI. 2. Berbanding dengan Vue, React lebih fleksibel tetapi mempunyai lengkung pembelajaran yang curam, yang sesuai untuk projek besar. 3. Berbanding dengan sudut, bertindak balas lebih ringan, bergantung kepada ekologi komuniti, dan sesuai untuk projek yang memerlukan fleksibiliti.

React beroperasi di HTML melalui DOM maya. 1) React menggunakan sintaks JSX untuk menulis struktur seperti HTML. 2) Kemas kini UI Pengurusan Maya DOM, rendering yang cekap melalui algoritma yang berbeza. 3) Gunakan reactDom.render () untuk menjadikan komponen ke DOM sebenar. 4) Pengoptimuman dan amalan terbaik termasuk menggunakan react.memo dan komponen pemisahan untuk meningkatkan prestasi dan penyelenggaraan.


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

Dreamweaver CS6
Alat pembangunan web visual

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.