2016-08-21 分類: 網(wǎng)站建設(shè)
JavaScript是什么?
JavaScriptNode.jsemberjsjQuerybackbonejs反應(yīng)阿賈克斯網(wǎng)絡(luò)開發(fā)角
說JavaScript在Web開發(fā)中的上升將是一個(gè)輕描淡寫。事實(shí)上,幾年前,著名的程序員深圳網(wǎng)站制作公司在哪兒說:
任何應(yīng)用程序,可以用JavaScript寫的,最終將用JavaScript寫的。
在寫這篇文章的時(shí)候,有那么多的JavaScript框架和庫,這是壓倒性的不知道從哪里開始,特別是如果你是一個(gè)初學(xué)者。
我知道,我們?cè)谶@里發(fā)布是面向那些已經(jīng)在編寫Web應(yīng)用程序或Web開發(fā)經(jīng)驗(yàn)做一些。但這不是目標(biāo)受眾的這篇文章。
相反,這是專門為那些你從來沒有(或很少)寫過一行JavaScript,并想了解更多的關(guān)于語言和理解有什么。此外,我們要如何使用和什么期望從它。
總之,如果你是一位經(jīng)驗(yàn)豐富的專業(yè),那么這篇文章不適合你;但如果你好奇進(jìn)入JavaScript卻不知道從何開始,那么該引物將幫助你在正確的方向。
我們還建立了一個(gè)全面的指南來幫助你學(xué)習(xí)JavaScript,不論你是剛開始作為一個(gè)Web開發(fā)者或你想探索更高級(jí)的主題。退房
學(xué)習(xí)JavaScript:完全指南
JavaScript定義
你可能已經(jīng)聽說過JavaScript被稱為“客戶端腳本語言”,另一種說法是,它是一種編程語言,運(yùn)行在Web瀏覽器。
另外,維基百科的定義是這樣的:
JavaScript是一種高層次的、動(dòng)態(tài)的、非類型化,并解釋編程語言。它已經(jīng)在ECMAScript語言規(guī)范化。
以上都是事實(shí)(有不同程度的復(fù)雜性),但值得注意的是,JavaScript可以運(yùn)行在服務(wù)器端,太。這是超前的,雖然。相反,讓我們先談?wù)勔陨蠋c(diǎn),我們就來談?wù)劮?wù)器端JavaScript在文章后面。
高水平。當(dāng)編程語言是高級(jí)的,這是一個(gè)建筑的細(xì)節(jié)不需要知道關(guān)于計(jì)算機(jī)的基本。你不需要管理內(nèi)存,你不需要知道什么類型的處理器上運(yùn)行,并且你不需要處理像指針(如語言如C或匯編)。
動(dòng)態(tài)。語言是動(dòng)態(tài)的,允許開發(fā)人員添加新的代碼或引入新的對(duì)象擴(kuò)展語言的某些方面(如帖子對(duì)象)運(yùn)行程序時(shí)還是需要編譯程序。這是JavaScript的強(qiáng)大功能。
類型化。 如果你有編程經(jīng)驗(yàn),那么你可能會(huì)遇到某些類型的語言需要聲明變量的類型,你的工作。例如,也許你的變量將存儲(chǔ) 字符串 或 布爾。在JavaScript,這是沒有必要的。相反,你只需聲明一個(gè)變量的VaR關(guān)鍵詞
解釋。當(dāng)一種語言是一種編譯語言,你寫的代碼轉(zhuǎn)換成可執(zhí)行的二進(jìn)制文件,你可以分發(fā)給別人。在Windows中,這些文件被稱為EXE文件。在OS X上,這些往往是節(jié)目你從App Store或拖放到您的應(yīng)用程序的目錄下載。JavaScript是解釋型的,也就是說沒有編譯。相反,代碼的解釋(如PHP),所以有中介的軟件叫坐你寫和計(jì)算機(jī)翻譯指令代碼之間來回翻譯。
標(biāo)準(zhǔn)化。JavaScript 是 規(guī)范(它的正式名稱是ECMAScript)這意味著任何瀏覽器實(shí)現(xiàn)了標(biāo)準(zhǔn)將提供相同的功能,其他瀏覽器。是不是規(guī)范,那么Chrome可能會(huì)提供一些功能,邊緣不反之亦然。
現(xiàn)在我們已經(jīng)實(shí)現(xiàn)了語言的屬性,我們可以討論語言的某些方面和細(xì)微差別。
雖然都是重要的,了解作品的語言也很重要(尤其是如果你曾經(jīng)使用過其他語言)使你不預(yù)先進(jìn)入發(fā)展構(gòu)想如何它可以工作或如何應(yīng)該工作
相反,我寧愿蓋如何 <em>不</em>工作,你可以開始寫代碼,了解它到底是什么,你做的。
關(guān)于Language
首先,JavaScript是一種面向?qū)ο蟮木幊陶Z言,但它可能不同于你通??词裁匆稽c(diǎn)(如果你以前使用的面向?qū)ο蟮木幊陶Z言)。
JavaScript是什么所謂的原型語言。這意味著所有的JavaScript中的對(duì)象,如字符串,是基于 原型。
這使得我們,作為開發(fā)商,添加額外的功能,通過使用對(duì)象 原型繼承:
基于原型的編程是一種面向?qū)ο蟮木幊讨?,行為重用(繼承)是通過克隆現(xiàn)有的對(duì)象為原型的過程進(jìn)行。
我認(rèn)為,如果你從來沒有過的一種面向?qū)ο蟮恼Z言,那么你可能在這一點(diǎn)上有優(yōu)勢(shì),因?yàn)槟銢]有概念模型轉(zhuǎn)換為思考如何工作。
如果,另一方面,你 都曾在這些類型的語言,我認(rèn)為它值得區(qū)分如何原型繼承不同于經(jīng)典傳承:
在經(jīng)典的傳承,我們,作為開發(fā)商,將編寫一個(gè)類。多個(gè)對(duì)象可以從這個(gè)類創(chuàng)建。此外,我們可以寫一個(gè)類繼承這個(gè)類,然后創(chuàng)建<em>這些</em>類的實(shí)例 。在這種情況下,派生類和基類共享代碼。所以當(dāng)你創(chuàng)建一個(gè)類的一個(gè)實(shí)例,你得到的子類和父類的功能。
進(jìn)入原型繼承,有沒有這樣的東西作為班。相反,你只需定義一個(gè)對(duì)象和功能介紹什么是必要的。當(dāng)你要對(duì)一個(gè)已經(jīng)存在的對(duì)象添加功能,您通過添加到對(duì)象的原型。如果你試圖調(diào)用一個(gè)對(duì)象的方法等數(shù)然后,它會(huì)先看看那個(gè)對(duì)象的方法。如果沒有找到它,然后它會(huì)鏈向上移動(dòng)直到找到方法(可能生活在基地目標(biāo))。
最后,也許是最重要的事情需要注意的,就是當(dāng)你改變一個(gè)對(duì)象的原型,然后對(duì)每個(gè)人使用該對(duì)象的訪問(至少在你的環(huán)境中)。
它真的很強(qiáng)大,它真的很酷,但它也需要一個(gè)輕微的轉(zhuǎn)變思維,如果你不習(xí)慣在那樣的環(huán)境中工作。
我們?nèi)绾问褂肑avaScript呢?
在我們?nèi)绾伟袹avaScript的使用方面,它最終取決于你的目標(biāo)是什么。在這一點(diǎn)上,使用JavaScript意味著你需要“做點(diǎn)什么”的網(wǎng)頁上。這意味著控制的行為。
這可能是引入一個(gè)元素,刪除(或隱藏)的一個(gè)元素,或類似的東西。然后Web高級(jí)一點(diǎn)的瀏覽器能夠使異步調(diào)用的服務(wù)器,處理響應(yīng),然后更改頁的狀態(tài),基于此反應(yīng)。
所有這一切都是通過阿賈克斯。如果你正在閱讀本文,你可能熟悉的術(shù)語。如果你沒有,你可以認(rèn)為它是JavaScript打托管服務(wù)器的頁面然后把它接收 響應(yīng)的一種方式所有的無刷新頁面。
但它的成熟, 甚至超越。
谷歌已經(jīng)開發(fā)了一個(gè)高度復(fù)雜的JavaScript解析引擎稱為V8,和其他瀏覽器都致力于提供好的JavaScript性能, 為好。
Chrome的V8 JavaScript引擎的登陸頁面,谷歌
事實(shí)上,我們現(xiàn)在能夠使用工具如服務(wù)器編寫JavaScriptNode.js。此外,我們甚至可以混合應(yīng)用跑在我們的移動(dòng)設(shè)備。這意味著我們能夠?yàn)槲覀兊氖謾C(jī)解決方案,建立我們的平板電腦,與桌面計(jì)算機(jī)通過使用JavaScript。
對(duì)于一個(gè)寫作的NodeJS服務(wù)器上的JavaScript運(yùn)行時(shí)引擎的主頁
這是來自一個(gè)曾經(jīng)作為一種有生命的物體在屏幕上的語言。所有這一切說的是,如果你是新來的JavaScript,不要低估 它。
“我應(yīng)該期望從語言?”
以上都是有趣的閱讀,并看看我們能做它的樂趣,但從純粹實(shí)用的角度來看,期望從JavaScript語言,我們能做什么?
無論你是新來的語言或你想學(xué)習(xí)一門新的語言的時(shí)候,你來自另一個(gè)背景,你有一個(gè)期望的水平是什么語言可以提供。
雖然我們已經(jīng)談?wù)撜Z言從內(nèi)部視角是如何工作的,我們還沒有談到,在語言中可用的對(duì)象,更別說API。說實(shí)話,覆蓋在語言的API和內(nèi)置函數(shù)將一篇自己的所有。
但覆蓋其內(nèi)置的對(duì)象嗎?這是我們可以回顧之前結(jié)束這篇文章:
<strong>對(duì)象</strong>?;鶎?duì)象從所有其他對(duì)象繼承他們的一些基本的功能。
<strong>功能</strong>。因?yàn)镴avaScript是面向?qū)ο蟮?,這意味著一切都是對(duì)象,包括函數(shù)。所以當(dāng)你創(chuàng)建一個(gè)新的功能,你創(chuàng)建一個(gè)引用和函數(shù)類型的一個(gè)對(duì)象。和功能,您可以檢查運(yùn)行時(shí)的性能(如傳入的參數(shù))。
布爾。這個(gè)對(duì)象作為一個(gè)布爾值的包裝對(duì)象。在許多語言中,布爾值數(shù)據(jù)類型是真正的或假。在JavaScript中,你仍然可以用這些價(jià)值的工作,但他們都被理解為對(duì)象。
數(shù)。在許多編程語言,有原始的類型,如浮動(dòng),int,雙,等等。在JavaScript中,只有一個(gè)號(hào)碼,它也是一個(gè)對(duì)象。
<strong>日期</strong>。日期在編程的工作是永遠(yuǎn)的樂趣,尤其是當(dāng)你介紹時(shí)區(qū)。我不能說JavaScript將解決你所有的問題,因?yàn)樗婕暗綍r(shí)區(qū),但它可以讓你更容易的工作日期(所有的方式從年月到天,小時(shí),分鐘,和第二)。
<strong>字符串</strong>。幾乎每種編程語言都有一個(gè)原始的字符串?dāng)?shù)據(jù)類型。JavaScript并沒有太大的不同就是,你會(huì)期望,字符串與自身屬性的對(duì)象。
記住,所有你看到的上面的類型對(duì)象的屬性(功能),你可以調(diào)用自己的。這并不意味著你需要調(diào)用構(gòu)造函數(shù)來初始化變量。那就是,你可以創(chuàng)建字符串和布爾值和數(shù)字像這:
7
<trans data-src="var example_string = 'Hello world!'">無功example_string =“Hello World!”</trans><trans data-src=";
var example_boolean = true;
var example_number = 42;">;
VaR example_boolean = true;
;</trans>
但是,最終,他們?nèi)匀皇菍?duì)象。
需要明確的是,這些都是 <em>基本</em>對(duì)象。有更先進(jìn)的對(duì)象,是值得研究的,尤其是如果你將錯(cuò)誤處理工作,各類藏品超出數(shù)組,等等。
如果你在閱讀更多有關(guān)這些感興趣,那么我強(qiáng)烈建議檢查出本頁在Mozilla開發(fā)者網(wǎng)絡(luò)。
庫和框架是什么?
如果你一直保持的各種框架,圖書館,和其他在JavaScript經(jīng)濟(jì)存在的工具,那么你就不在是多么的充滿活力的經(jīng)濟(jì)已經(jīng)成為。
但是這篇文章是針對(duì)那些想要開始JavaScript?,F(xiàn)在你有了一個(gè)基本的了解語言的結(jié)構(gòu)和它是如何工作的,它的時(shí)間來看看庫和框架提供幫助,減少網(wǎng)絡(luò)和/或應(yīng)用程序開發(fā)。
jQuery是一個(gè)庫,旨在提供一個(gè)跨瀏覽器的API,允許你“寫更少的代碼,做更多的事情。”
角是一個(gè)JavaScript框架,旨在使建筑單頁應(yīng)用程序更加容易。
反應(yīng)是一個(gè)用于構(gòu)建用戶界面的JavaScript庫。
骨干通過使用Web應(yīng)用程序模型,給結(jié)構(gòu)的集合,和觀點(diǎn)。
ember.js又是一個(gè)框架,“創(chuàng)造雄心勃勃的Web應(yīng)用程序”。
和更多的。
這是 <em>遠(yuǎn)</em>從一個(gè)完整的清單,哪些是有效的,但它是一個(gè)開始,這是極少數(shù)的選擇那些熟悉JavaScript至少應(yīng)該知道,即使你不做任何與他們的工作。
當(dāng)你開始學(xué)習(xí)JavaScript開始拿起這些工具,你會(huì)發(fā)現(xiàn)是多么的流行,他們中的一些人談到一些你自己喜愛的應(yīng)用程序。
學(xué)習(xí)JavaScript
正如你所期待的,什么什么懶覺都是“教學(xué)技巧,世界各地?cái)?shù)以百萬計(jì)的人”。那么,這樣做后如果不包括我們的一些比較流行的JavaScript的文章和課程鏈接?
答:JavaScript ES6,你知道正確的工具的工作嗎?
JavaScript信守承諾
創(chuàng)建WordPress和Angular.js單頁應(yīng)用
在6模板字符串的天才
JavaScript ES6基礎(chǔ)
測(cè)試角指令
Windows 10的通用應(yīng)用程序的JavaScript
所有這些資源是理想的開始使用JavaScript和將它添加到您的Web開發(fā)技能的劇目。
結(jié)論
當(dāng)涉及到網(wǎng)站開發(fā),JavaScript是留在這里。雖然你可能不會(huì)使用什么被認(rèn)為是“香草JavaScript”,選擇其中的許多圖書館和/或框架是可用的,JavaScript是一種語言,幾乎每一個(gè)Web開發(fā)者應(yīng)該知道。
當(dāng)然,不是每個(gè)人都<可以在前端 。有些是單純的服務(wù)器端開發(fā);有些是純粹的客戶端開發(fā)。盡管如此,我們都必須共同努力,確保我們的應(yīng)用程序的各個(gè)部分互相溝通。
為此,它從客戶端了解數(shù)據(jù)的至少重要的是發(fā)送到服務(wù)器端通過JavaScript,以及它如何處理在服務(wù)器端,然后返回客戶端可采用任何方式。
不要這么快就把JavaScript只因?yàn)槟悴皇且粋€(gè)前端開發(fā)。奇怪的是,有人和你一起工作的是使用它,需要你的工作以配合應(yīng)用部分。
當(dāng)然,本文只是劃傷表面。正如我一開始所說的,本文的目的是解釋JavaScript是什么,如何使用,和所期待的,尤其是對(duì)于那些剛開始使用的語言。
JavaScript已經(jīng)成為事實(shí)上的語言工作的網(wǎng)。這不是沒有它的學(xué)習(xí)曲線,并有框架和庫讓你忙,也不少。 如果您正在尋找額外的資源來學(xué)習(xí)或使用您的工作,看看我們有什么可以在 什么什么懶覺市場(chǎng)。
如果你喜歡這篇文章,你也可以看看 在 我的課程和教程我的個(gè)人資料頁,而且,如果你有興趣,你可以閱讀更多的文章是關(guān)于WordPress和WordPress的發(fā)展 在我的博客 。
網(wǎng)站標(biāo)題:JavaScript是什么
網(wǎng)站地址:http://muchs.cn/news40/21040.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、網(wǎng)站制作、虛擬主機(jī)、面包屑導(dǎo)航、網(wǎng)站內(nèi)鏈、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容