JS高級程序設計(1-3章)-筆記

寫在前面

本文記錄的是我不熟悉或者我認爲值得注意的地方,並非書上知識點的歸納。數據庫


第1章 JavaScript簡介

  • JS誕生時間:1995年(好年輕...)
  • JS誕生背景:表單數據合法性由服務端驗證的用戶體驗很差,但願能在客戶端進行驗證
  • JS如今用處:若是沒有JS,網頁內容只能用於展現,不能與用戶進行交互(好比註冊,登陸)。如今JS主要用於實現網頁上的各類交互(其實也就是數據的通信,把用戶的交互數據丟給數據庫,又從數據庫拿出數據展現給用戶)。再就是有些複雜的網頁樣式/動畫也會用JS去實現。再就是canvas畫圖這種。等等。

ECMA(European Computer Manufacturers Association):歐洲計算機制造商協會canvas

因爲不一樣瀏覽器中實現的JS不同,在1997年ECMA指定39號技術委員會負責「標準化一種通用、跨平臺、供應商中立的腳本語言的語法和語義」,也就是後來的ECMA-262——定義一種名爲ECMAScript的新腳本語言的標準。瀏覽器

ECMAScript與Web瀏覽器沒有依賴關係。宿主環境舉例:Web瀏覽器;Node函數


一個完整的JS實現是由三部分組成的:動畫

  1. 核心(ECMAScript):腳本語言的基本語法之類的;
  2. 文檔對象模型(DOM,Document Object Modal):提供頁面內容相關信息和操做接口;
  3. 瀏覽器對象模型(BOM,Browser Object Modal):提供瀏覽器相關信息和操做接口;

第2章 在HTML中使用JavaScript

在加載<script>時,瀏覽器會被堵塞。而因爲瀏覽器在遇到<body>標籤時纔開始呈現內容,因此通常把<script>放在<body>標籤中內容的後面,減小因爲加載<script>致使的頁面空白時間。指針


第3章 基本概念

關鍵字:有特殊用途的詞
保留字:之後可能會被用做關鍵字的詞code

ECMAScript中5種簡單/基本數據類型:UndefinedNullBooleanNumberString;1種複雜數據類型:Object對象

數據類型爲Undefined的值只有一個,即undefined
數據類型爲Null的值也只有一個,即null接口

null表示一個空的對象指針ip


對於Number必定必定要注意的一點是:JS對小數的計算並不許確,好比0.1 + 0.2的執行結果是0.30000000000000004。在項目中若是須要精確計算小數,能夠引入專門處理JS浮點數計算問題的庫

Number.MIN_VALUE:最小數值
Number.MAX_VALUE:最大數值

若是某個值超過了範圍,會被相應轉換爲-InfinityInfinity,而且這個值不能參與計算,由於Infinity不是可以參與計算的值

isFinite():判斷一個數是不是有窮的

任何涉及NaN的操做都會返回NaN

isNaN():不能被轉爲數值則返回true,不然false

parseInt():第一個參數爲要進行轉換的值,第二個參數是轉換時的基數/進制。建議始終指定基數

parseFloat():只解析十進制

toString():能夠接受一個參數,轉換的基數


對象:經過執行new操做符 + 要建立的對象類型的名稱來建立(new GirlFriend()送你不謝)

Object類型的每一個實例都具備下列屬性和方法:

  • constructor:保存着用於建立當前對象的函數,好比GirlFriend()
  • hasOwnProperty(propertyName)propertyName在當前對象實例中是否存在
  • isPrototypeOf(object)object是不是當前對象的原型
  • toLocaleString():返回對象的字符串表示,與執行環境的地區對應
  • toString():返回對象的字符串表示
  • valueOf():返回對象的字符串、數值或布爾值表示,一般與toString()的返回值同樣

注意:BOMDOM中的對象是由宿主實現提供和定義的,不必定含有上述屬性和方法


完。

相關文章
相關標籤/搜索