JavaScript技術(shù)詳解,JS從入門到精通


【JavaScript簡介】
JavaScript(簡稱“JS”)是前端開發(fā)最核心的技術(shù),沒有之一!JS是一種具有函數(shù)優(yōu)先的輕量級,解釋型或即時編譯型的編程語言,雖然它是作為開發(fā)Web頁面的腳本語言而出名的,但是它也被用到了很多非瀏覽器環(huán)境中,JavaScript 基于原型編程、多范式的動態(tài)腳本語言,并且支持面向?qū)ο蟆⒚钍胶吐暶魇剑ㄈ绾瘮?shù)式編程)風(fēng)格。
JavaScript的標(biāo)準(zhǔn)是ECMAScript?。截至 2012 年,所有瀏覽器都完整的支持ECMAScript 5.1,舊版本的瀏覽器至少支持ECMAScript 3 標(biāo)準(zhǔn)。2015年6月17日,ECMA國際組織發(fā)布了ECMAScript 的第六版,該版本正式名稱為 ECMAScript 2015,但通常被稱為ECMAScript 6 或者ES6。
?
【JavaScript特性】
JavaScript腳本語言具有以下特點(diǎn):
1. 腳本語言
JavaScript是一種解釋型的腳本語言,C、C++等語言先編譯后執(zhí)行,而JavaScript是在程序的運(yùn)行過程中逐行進(jìn)行解釋。
2. 基于對象
JavaScript是一種基于對象的腳本語言它不僅可以創(chuàng)建對象,也能使用現(xiàn)有的對象。
3. 簡單
JavaScript語言中采用的是弱類型的變量類型,對使用的數(shù)據(jù)類型未做出嚴(yán)格的要求,是基于Java基本語句和控制的腳本語言,其設(shè)計簡單緊湊。
4. 動態(tài)性
JavaScript是一種采用事件驅(qū)動的腳本語言,它不需要經(jīng)過Web服務(wù)器就可以對用戶的輸入做出響應(yīng)。在訪問一個網(wǎng)頁時,鼠標(biāo)在網(wǎng)頁中進(jìn)行鼠標(biāo)點(diǎn)擊或上下移、窗口移動等操作JavaScript都可直接對這些事件給出相應(yīng)的響應(yīng)。
5. 跨平臺性
JavaScript腳本語言不依賴于操作系統(tǒng),僅需要瀏覽器的支持。因此一個JavaScript腳本在編寫后可以帶到任意機(jī)器上使用,前提上機(jī)器上的瀏覽器支 持JavaScript腳本語言,JavaScript已被大多數(shù)的瀏覽器所支持。
不同于服務(wù)器端腳本語言,例如PHP與ASP,JavaScript主要被作為客戶端腳本語言在用戶的瀏覽器上運(yùn)行,不需要服務(wù)器的支持。所以在早期程序員比較青睞于JavaScript以減少對服務(wù)器的負(fù)擔(dān),而與此同時也帶來另一個問題:安全性。
而隨著服務(wù)器的強(qiáng)壯,雖然程序員更喜歡運(yùn)行于服務(wù)端的腳本以保證安全,但JavaScript仍然以其跨平臺、容易上手等優(yōu)勢大行其道。同時,有些特殊功能(如AJAX)必須依賴Javascript在客戶端進(jìn)行支持。隨著引擎如V8和框架如Node.js的發(fā)展,及其事件驅(qū)動及異步IO等特性,JavaScript逐漸被用來編寫服務(wù)器端程序。
?
【系統(tǒng)學(xué)習(xí)并掌握J(rèn)avaScript】
尚硅谷JavaScript核心教程
https://www.bilibili.com/video/BV1YW411T7GX
課程詳情:
該視頻是JavaScript基礎(chǔ)視頻,其中涵蓋了ES標(biāo)準(zhǔn)、BOM以及DOM的大部分內(nèi)容,適合有一定HTML和CSS基礎(chǔ)的同學(xué)學(xué)習(xí)。 通過對該視頻的學(xué)習(xí),可以使同學(xué)初步掌握J(rèn)avaScript,對面向?qū)ο蟮恼Z言有一個初步的理解。并且能夠通過DOM和BOM完成一項(xiàng)基本的頁面效果。 JavaScript的基礎(chǔ)對于一名前端工程師非常重要,希望同學(xué)們認(rèn)真學(xué)習(xí),學(xué)習(xí)完該教程可以繼續(xù)學(xué)習(xí)JS高級部分的知識。
?
尚硅谷JavaScript高級教程
https://www.bilibili.com/video/BV14s411E7qf
課程詳情:
本套視頻主講JavaScript高級部分內(nèi)容, 以復(fù)習(xí)總結(jié)JavaScript最基礎(chǔ)的核心概念(數(shù)據(jù)類型,變量,內(nèi)存,對象,函數(shù))開始, 深入淺出講解JavaScript最核心也最具難度的部分技術(shù):原型與原型鏈、執(zhí)行上下文、執(zhí)行上下文棧、變量提升、函數(shù)提升、作用域、作用域鏈、閉包、對象的多種創(chuàng)建模式、對象的繼承模式、JavaScript事件循環(huán)機(jī)制等。這部分技術(shù)是成為高級前端工程師的必備利器。
?
