国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

《JavaScript Dom編程藝術》讀書筆記(一)

lewinlee / 1826人閱讀

摘要:下面這條語句將導致語法錯誤變量名允許包含字母數字美元符號和下劃線但第一個字符不允許是數字。可以把一些布爾值存入一個數組,還可以把一組數值存入一個數組甚至可以把這種數據類型混在一起存入一個數組數組元素還可以是變量這將把數組的第一個元素賦值為。

執行Javascript的方式

第一種方式是將JS代碼放到 < head > 標簽中的 < script > 標簽之間:


    

一種更好的方式是將JS代碼存為一個擴展名為.js的獨立文件。通過 < head >標簽中的 < script >標簽中的 src 屬性指向該文件:


    

但最好的做法是把 < script > 標簽放到 html 文檔的最后,< /body > 標簽之前:


    
 

這樣能使瀏覽器更快的加載頁面。

語句

每條語句都以分號結尾,并換行(最好的寫法,容易閱讀,更容易追蹤JS腳本的執行順序):

first statement;
second statement;

當然也可以放在一行:

first statement;second statement;

注釋

注釋能夠有效的幫助了解代碼流程,必須養成良好的注釋習慣。

JS注釋的3種形式:

//自我提醒,有注釋是好事

/* 自我提醒
有注釋是好事 */

但JS不要求這樣做,它會把 " - - > " 視為注釋內容的一部分。

注意: HTML 允許上面這種注釋跨越多行,但JS要求這種注釋的每行必須開頭加上 "< ! - - "來作為標志。

為了避免混淆,最好單行注釋使用 // , 多行注釋使用 /* */

變量

var 稱為變量,js中可以給變量賦值:

mood = "happy";
age = "13"; 

在JS中,如果在對某個變量賦值之前未聲明,賦值操作將自動聲明該變量。雖然JS沒有強制要求必須提前聲明變量,但提前聲明變量是一種良好的編程習慣。下面的語句中對變量 mood 和 age做出了聲明:

var mood;
var age;

不必多帶帶聲明每個變量,也可以用一條語句一次聲明多個變量:

var mood, age;

甚至可以一石二鳥,把聲明變量和對該變量賦值一次完成:

var mood = "happy";
var age = 33;

甚至還可以像下面這樣:

var mood = "happy", age = 33;

像上面這樣的聲明和賦值是最有效率的做法,這一條語句的效果相當于下面這些語句的總和:

var mood, age;
mood = "happy";
age = 33;

JS中,變量和其他語法元素的名字都是區分字母大小寫的。例如下面的語句,是在對兩個不同的變量進行賦值:

var mood = "happy";
Mood = "sad";

JS語法中不允許變量名中包含空格或標點符號(美元符號 " $ " 例外)。下面這條語句將導致語法錯誤:

var my mood = "happy";

JS變量名允許包含字母、數字、美元符號和下劃線(但第一個字符不允許是數字)。為了讓比較長的變量名更容易閱讀,可以在變量名中的適當位置插入下劃線:

var my_mood = "happy";

另一種方式是使用駝峰格式,,刪除中間的空白(下劃線),后面的每個新單詞改用大寫字母開頭:

var myMood = "happy";

通常駝峰格式是函數名、方法名和對象屬性名的首選格式。

數據類型

在聲明變量的同時還必須同時聲明變量的數據類型,這種做法稱為類型聲明。

必須明確類型聲明的語言稱為強類型語言。JS不需要進行類型聲明,因此它是一種弱類型語言,可以在任何階段改變變量的數據類型。

以下語句在強類型語言中是非法的,但在JS里卻完全沒有問題:

var age = "thirety three";
age = 33;

JS并不在意變量age的值是一個字符串還是一個數。

字符串

字符串由零個或多個字符構成。字符包括(但不限于)字母、數字、標點符號和空格。字符串必須包在引號里,單引號或雙引號都可以。下面兩條語句含義完全相同:

var mood = "happy";
var mood = "happy";

JS中可以隨意選用引號,但最好根據字符串包含的字符來選擇。如果字符串包含雙引號,就把整個字符串放在單引號里;如果字符串包含單引號,就把整個字符串放在雙引號里:

var mood = "don"t ask";

如果想再上門這條語句中使用單引號,就必須保證字符 “n” 和 "t" 之間的單引號能被當成這個字符串的一部分。這種情況下這個單引號需要被看做一個普通字符,而不是這個字符串的結束標志。這種情況需要對這個字符進行轉義。在JS中用反斜線對字符進行轉義:

var mood = "don"t ask";

類似地,如果想用雙引號來包住一個本身就包含雙引號的字符串,就必須用反斜線對字符串中的雙引號進行轉義:

var height = "about 5"10" tall";

實際上這些反斜線并不是字符串的一部分。

需要養成一個良好的編程習慣,不管選擇用雙引號還是單引號,在整個腳本中最好保持一致。如果在同一個腳本中一會兒使用雙引號,一會兒又使用單引號,代碼很快就會變得難以閱讀和理解。

數值

給變量賦一個數值,不用限定數值必須為一個整數。JS允許使用帶小數點的數值,并且允許任意位小數,這樣的數稱為浮點數:

var age = 33.25;

也可以使用負數。在有關數值的前面加上一個減號( - )表示它是一個負數:

var temperature = -20;

JS也支持負數浮點數:

var temperature = -20.3333333;

布爾值

布爾數據只有兩個可選值—— ture 或 false。假設需要這樣一個變量:如果我正在睡覺,這個變量將存儲一個值;如果我沒在睡覺,這個變量將儲存另一個值。可以用字符串數據類型把變量賦值為 “sleeping” 或 “not sleeping”。但使用布爾數據類型是更好的選擇:

var sleeping = ture;

布爾值不是字符串,千萬不要把布爾值用引號括起來。布爾值 false 與 “false”是兩碼事!

下面這條語句將變量設置為布爾值ture:

var married = true;

下面這條語句將變量設置為字符串“ture”:

var married = "true";
數組

字符串、數值和布爾值都是標量。如果某個變量是標量,它在任意時刻就只能有一個值。如果想用一個變量來存儲一組值,就需使用數組。

數組是指用一個變量表示一個值的集合,集合中的每個值都是這個數組的一個元素 (element)。

JS中,數組可以用關鍵字Array聲明,聲明數組的同時還可以指定數組初始元素的個數,也就是這個數組的長度。例如用名位 beatles 的變量來保存 Beatles 樂隊全體四位成員的姓名:

var beatles = Array(4);

有時無法預知某個數組有多少個元素。JS根本不要求在聲明數組時必須給出元素個數,我們完全可以在聲明數組時不給出元素個數:

var beatles = Array();

向數組中添加元素的操作稱為填充。在填充數組時,不僅需要給新元素的值,還需要給出新元素在數組中的存放位置,這個位置就是這個元素的下標。數組里一個元素配有一個下標。下標必須用方括號括起來:

array[index] = element;

按照 Beatles 樂隊成員的傳統順序(即 John、Paul、George 和 Ringo)進行填充。第一個:

beatles[0] = "John";

用 0 而不是 1 作為第一個下標是JS里的一條規則。

聲明和填充 beatles 數組的全過程:

var beatles = Array(4);
beatles[0] = "John";
beatles[1] = "Paul";
beatles[2] = "George";
beatles[3] = "Ringo";

現在可以通過 下標值 “2” ( beatles[2] ) 來獲取元素 "George"。

特別注意, beatles 數組的長度是 4,但是數組最后一個元素的下標卻是 3,因為數組是從 0 開始計數的。

有一種相對簡單的填充方式:在聲明數組的同時對它進行填充。這種方式要求用逗號把各個元素隔開:

var beatles = array( "John", "Paul", "George", "Ringo" );

上面這條語句會為每個元素自動分配一個下標:第一個下標是 0 ,第二個是 1,依次類推。因此,beatles[2] 仍將對應于取值為 “George” 的元素。

甚至用不著明確地表明我們是在創建數組。事實上,只需要用一對方括號把各個元素的初始值括起來就可以了:

var beatles = [ "John", "Paul", "George", "Ringo" ];

數組元素不必非得是字符串。可以把一些布爾值存入一個數組,還可以把一組數值存入一個數組:

var years = [ 1940, 1941, 1942, 1943 ];

甚至可以把這 3 種數據類型混在一起存入一個數組:

var lennon = [ "John", 1940, false ];

數組元素還可以是變量:

var name = "John";
beatles[0] = name;

這將把 beatles 數組的第一個元素賦值為 “John”。

數組元素的值還可以是另一個數組的元素。下面兩條語句將把 beatles 數組的第二個元素賦值為 “Paul”:

var names = [ "Ringo", "John", "Paul", "George" ];
beatles[1] = names[3];

數組中還可以包含其他的數組,數組中的任何一個元素都可以把一個數組作為它的值:

var lennon = [ "John", 1940, false ];
var beatles = [];
beatles[0] = lennon;

現在 beatles 數組的第一個元素的值就是另一個數組。想要獲取那個數組里的某個元素的值,需要使用更多的方括號。 beatles0的值是“John”, beatles0的值是 1940, beatles0的值是 false。

關聯數組

如果在填充數組時只給出了元素的值,這個數組就將使一個傳統數組,它的各個元素的下標將會自動創建和刷新。

可以通過在填充數組時為每個新元素明確地給出下標來改變這種默認的行為。在為新元素給出下標時,不比局限于使用整數數字。可以使用字符串:

var lennon = Array();
lennon["name"] = "John";
lennon["year"] = 1940;
lennon["living"] = false;

這樣的數組叫做關聯數組。由于可以使用字符串來代替數字值,使代碼更具有可讀性。這種做法并不是一個好習慣,不推薦使用。理想情況下,不應該修改Array對象的屬性,二應該使用通用的對象( Object )。

對象

對象是自包含的數據集合,包含在對象里的數據可以通過屬性和方法兩種形式訪問。

屬性是隸屬于某個特定對象的變量

方法是只有某個特定對象才能調用的函數

對象是由一些屬性和方法組合在一起而構成的一個數據實體。

在JS離,屬性和方法都使用 “點” 語法來訪問:

Object.property     //屬性
Object.method()     //方法

假如對象的名字是Person,需要使用對象的屬性必須使用如下記號:

Person.mood
Person.age

假如 Person 對象還關聯著一些諸如 walk() 和 sleep() 之類的函數,這些函數就是這個對象的犯法,需要使用如下記號來訪問:

Person,walk()
Person.sleep()

為了使用 Person 對象來描述一個特定的人,需要創建一個 Person 對象的實例。實例是對象的具體個體。例如你和我都是人,都可以用 Person 對象來描述;但你和我是兩個不同的個體,很可能有著不同的屬性(例如,年齡可能不一樣)。因此,你和我對應這兩個不同的 Person 對象,雖然它們都是 Person 對象,但它們是兩個不同的實例。

為給定對象創建一個新實例需要使用 new 關鍵字:

var jeremy = new Person;

這條語句將創建出 Person 對象的一個新實例 jeremy。之后可以像下面這樣利用 Person 對象的屬性來檢索關于 jeremy 的信息:

jeremy.age
jeremy.mood
內建對象

數據就是一種內建對象。當使用new關鍵字去初始化一個數組時,其實是在創建一個Array對象的新實例:

var beatles = new Array();

當需要了解某個數組有多少個元素時,利用Array對象的length屬性來獲得這一信息:

beatles.lenggth;

Array對象知識諸多JavaScript內建對象中的一種。其他例子包括Math對象和Date對象,它們分別提供了許多非常有用的方法供人們處理數值和日期值。例如,Math對象的round方法可以把十進制數值舍入為一個與之最接近的整數:

var num = 7.561;
var num = Math.round(num);
alert(num);

Date對象可以用來存儲和檢索與特定日期和時間有關的信息。在創建Date對象的新實例時,JavaScript解釋器將自動地使用當前日期和時間對它進行初始化:

var current_date = new Date();

Date對象提供了getDay()、getHours()、getMonth()等一系列方法,以供人們用來檢索與特定日期有關的各種信息。例如,getDay()方法可以告訴我們給定日期是星期幾:

var today = current_date.getDay)_;
宿主對象

除了內建對象,還可以在JavaScript腳本里使用一些已經預先定義好的其他對象。這些對象不是由JavaScript語言本身而是由它的運行壞境提供的。具體到Web應用,這個壞境就是瀏覽器。由瀏覽器提供的預定義對象被稱為宿主對象。

宿主對象包括Form、Image和Element等。可以通過這些對象獲得關于網頁上表單、圖像和各種表單元素等信息。還有一個宿主對象也能用來獲得網頁上的任何一個元素的信息,它就是document對象。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/54352.html

相關文章

  • JavaScript Dom編程藝術讀書筆記(三)

    摘要:也就是說,仍將看到一條消息。這些語句執行完畢后,變量的值將是,盡管循環控制條件的求值結果是。循環最常見的用途之一是對某個數組里的全體元素進行遍歷處理。變量對于數組中每個元素都是從開始按遞增。 循環語句 if語句唯一的不足是無法完成重復性的操作。在if語句里,包含在花括號里的代碼塊只能執行一次。如果需要多次執行同一個代碼塊,就必須使用循環語句。 while循環 while循環與if語句非...

    xbynet 評論0 收藏0
  • JavaScript Dom編程藝術讀書筆記(四)

    摘要:事實上,每個函數實際是一個短小的腳本。先對函數做出定義再調用是一個良好的編程習慣。可以將不同的數據傳遞給它們,而它們將使用這些數據去完成預定的操作。傳遞給函數的數據稱為參數。這個例子中,變量的值將是,這個數值由函數返回。 函數 如果需要多次使用同一段代碼,可以把它們封裝成一個函數。函數就是一組允許在你的代碼里隨時調用的語句。事實上,每個函數實際是一個短小的腳本。 先對函數做出定義再調用...

    JellyBool 評論0 收藏0
  • JavaScript Dom編程藝術讀書筆記(二)

    摘要:邏輯非操作符只能作用于單個邏輯操作數,其結果是把那個邏輯操作數所返回的布爾值取反。如果那個邏輯操作數所返回的布爾值是,邏輯非操作符將把它取反為為了避免產生歧義,上面這條語句把邏輯操作數放在了括號里,使邏輯非操作符作用于括號里的所有內容。 算術操作符 加減乘除這些算術操作中的每一種都必須借助于相應的操作符才能完成。操作符是JavaScript為完成各種操作而定義的一些符號。等號(=)、加...

    caspar 評論0 收藏0
  • JavaScript Dom編程藝術讀書筆記(二)

    摘要:邏輯非操作符只能作用于單個邏輯操作數,其結果是把那個邏輯操作數所返回的布爾值取反。如果那個邏輯操作數所返回的布爾值是,邏輯非操作符將把它取反為為了避免產生歧義,上面這條語句把邏輯操作數放在了括號里,使邏輯非操作符作用于括號里的所有內容。 算術操作符 加減乘除這些算術操作中的每一種都必須借助于相應的操作符才能完成。操作符是JavaScript為完成各種操作而定義的一些符號。等號(=)、加...

    xingpingz 評論0 收藏0
  • JavaScript Dom編程藝術讀書筆記(二)

    摘要:邏輯非操作符只能作用于單個邏輯操作數,其結果是把那個邏輯操作數所返回的布爾值取反。如果那個邏輯操作數所返回的布爾值是,邏輯非操作符將把它取反為為了避免產生歧義,上面這條語句把邏輯操作數放在了括號里,使邏輯非操作符作用于括號里的所有內容。 算術操作符 加減乘除這些算術操作中的每一種都必須借助于相應的操作符才能完成。操作符是JavaScript為完成各種操作而定義的一些符號。等號(=)、加...

    Aceyclee 評論0 收藏0
  • JavaScript Dom編程藝術讀書筆記(五)

    摘要:可以創建一個函數并讓它返回一個數值一個字符串一個數組或一個布爾值。操作符可以告訴我們它的操作數是一個字符串數值函數布爾值還是對象,例如在瀏覽器中加載這個例子時,會彈出一個對話框,報告的類型它是一個對象。 函數 如果需要多次使用同一段代碼,可以把它們封裝成一個函數。函數就是一組允許在你的代碼里隨時調用的語句。事實上,每個函數實際是一個短小的腳本。 先對函數做出定義再調用是一個良好的編程習...

    levy9527 評論0 收藏0

發表評論

0條評論

lewinlee

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<