晚上看了JavaScript權(quán)威指南概述答姥,大概記錄下今天的知識
一:因?yàn)榉强瓢喑錾碡迹鰅os幾年了今天看了一點(diǎn)JavaScript發(fā)現(xiàn)接觸過的c,object-c,java,JavaScript,原來在計(jì)算機(jī)語言中數(shù)據(jù)結(jié)構(gòu)基本上是通用的烤芦,只不過表現(xiàn)形式上大同小異。小白如我,平時用那么多連基本概念還不清楚哈哈酷鸦。引用列一下:
數(shù)據(jù)結(jié)構(gòu)重在思想,每種語言的數(shù)據(jù)結(jié)構(gòu)只是根據(jù)算法的需要進(jìn)行改動牙咏,在表現(xiàn)形式上大同小異臼隔,數(shù)據(jù)結(jié)構(gòu)是為了對數(shù)據(jù)進(jìn)行操作而設(shè)計(jì)的結(jié)構(gòu)。
數(shù)據(jù)結(jié)構(gòu)是計(jì)算機(jī)存儲妄壶、組織數(shù)據(jù)的方式摔握。數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一種或多種特定關(guān)系的數(shù)據(jù)元素的集合。通常情況下丁寄,精心選擇的數(shù)據(jù)結(jié)構(gòu)可以帶來更高的運(yùn)行或者存儲效率氨淌。數(shù)據(jù)結(jié)構(gòu)往往同高效的檢索算法和索引技術(shù)有關(guān)。
編程語言(programming language)伊磺,是用來定義計(jì)算機(jī)程序的形式語言盛正。它是一種被標(biāo)準(zhǔn)化的交流技巧,用來向計(jì)算機(jī)發(fā)出指令屑埋。一種計(jì)算機(jī)語言讓程序員能夠準(zhǔn)確地定義計(jì)算機(jī)所需要使用的數(shù)據(jù)豪筝,并精確地定義在不同情況下所應(yīng)當(dāng)采取的行動。
二:JavaScript是弱類型的摘能,動態(tài)的续崖,高端的編程語言,非常適合面向?qū)ο蠛秃瘮?shù)式編程風(fēng)格团搞,這里的高端哈哈不理解袜刷,弱類型應(yīng)該可以理解為它不像c,oc內(nèi)不同類型轉(zhuǎn)換之間需要強(qiáng)制轉(zhuǎn)換,不過無法保證變量的類型莺丑,感覺跟swift語法很像著蟹。動態(tài)怎么說墩蔓,看到有段代碼可在創(chuàng)建好的數(shù)組中通過賦值添加新元素,好神奇有木有萧豆,不存在要指定邊界的說法……上圖片:
大概可以這么理解吧奸披,后續(xù)再看。這里要說明下涮雷,解釋型語言跟編譯型的區(qū)別阵面,以下為引用:
1.編譯型語言在程序執(zhí)行之前,有一個單獨(dú)的編譯過程洪鸭,將程序翻譯成機(jī)器語言样刷,以后執(zhí)行這個程序的時候,就不用再進(jìn)行翻譯了览爵。
2.解釋型語言置鼻,是在運(yùn)行的時候?qū)⒊绦蚍g成機(jī)器語言,所以運(yùn)行速度相對于編譯型語言要慢蜓竹。
3.C/C++ 等都是編譯型語言箕母,而Java,C#等都是解釋型語言俱济。
4.雖然Java程序在運(yùn)行之前也有一個編譯過程嘶是,但是并不是將程序編譯成機(jī)器語言,而是將它編譯成字節(jié)碼(可以理解為一個中間語言...ps:哇蛛碌,想到平時接觸到的React Native,ios項(xiàng)目里中間件的實(shí)現(xiàn))聂喇。
在運(yùn)行的時候,由JVM將字節(jié)碼再翻譯成機(jī)器語言蔚携。
5.腳本語言一般都有相應(yīng)的腳本引擎來解釋執(zhí)行希太。 他們一般需要解釋器才能運(yùn)行。JAVASCRIPT,ASP,PHP,PERL,Nuva都是腳本語言浮梢。C/C++編譯跛十、鏈接后彤路,可形成獨(dú)立執(zhí)行的exe文件秕硝。
三:概述里一些需要著重看下的概念
1.構(gòu)造函數(shù)與this關(guān)鍵字
需要注意的是IE下使用的是JScript引擎的,而標(biāo)準(zhǔn)瀏覽器下是SpiderMonkey Javascript引擎的洲尊,不同的javascript引擎對eval()所使用的閉包環(huán)境的理解并不相同远豺。
2:考慮到瀏覽器的兼容性,可用一些庫或者框架來簡化工作坞嘀,現(xiàn)在的web瀏覽器都包含了JavaScript解釋器躯护,它也提供了基本的輸入輸出功能,包括網(wǎng)絡(luò),存儲以及圖形相關(guān)的復(fù)雜特性丽涩,而JavaScript語言核心針對文本棺滞,數(shù)組裁蚁,日期,正則等操作則定義了少量API
今天就這樣吧……900多頁才看了幾十頁继准,不過概述基本所有的層面都涉及了點(diǎn)枉证,應(yīng)該后面的節(jié)奏會很快,堅(jiān)持更新啦移必。