javascript(js) python和java–js筆記

來源:互聯網
上載者:User

java我不太懂,c++稍微好一些,python比較熟悉,剛剛開始看JavaScript。

js最主要的兩個關鍵字:function和var

類型在js中並不是主要的,這一點與python類似,都沒有明確的類型定義,python中變數隨用隨取,js中最好需要用var定義一下。

js中的function與python也很類似,都是對象,都有對象的屬性,只是js具有prototype,python擁有的是__dict__。

js是從java中繼承過來的,文法與java接近,自然也與鼻祖C++有些類似,都採用{}來表示語句塊,都用;來表示語句結束(無;結束的斷行符號自動添加;,這一點與java差別較大),也採用>>>來表示無符號右移。應該說,運算式,文法結構,運算子與java,C++基本上是一樣的。

js沒有類的概念,python,java,c++都有。js通過prototype來類比類,通過function返回一個類,這個與python的meta有些類似。

js類對象可以通過類似python的字典初始化,字典的key用來作為屬性,value作為屬性值,這一點與python的dict是類似,如果深入分析,這應該是python與js底層最為接近的地方。

js的lambda函數是通過f = function(x) {return x;}來實現的,python的lambda則直接通過  f = lambda x : x 來實現的。都具有匿名申明函數的功能。

js中對象的屬性可以通過for var i in object來進行處理,與python的for i in dict.key()類似,都是一個對象的遍曆。

js中也有with語句,python26也引入了with語句,不過js中的with語句功能上還有些缺陷。

 

把js的function對象或者js對象看做是python的dict,更容易理解一些。

js的數組與python類似,js的string也具有join和split方法,所擷取得到的結果也是類似的。 當然,切片操作沒有python那麼優雅,還是需要slice函數調用的

可以那麼認為,js是介於java與python之間的一門語言,具有java的文法結構和python的指令碼性。

披著java的外皮,乾著python的勾當。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.