1. 程式人生 > >JavaScript基礎語法知識注意點整理

JavaScript基礎語法知識注意點整理

1.用JavaScript編寫的程式碼必須通過HTML/XHTML文件才能執行。有兩種方式:
第一種方式是將JavaScript程式碼放到文件<head>標籤中的<script>標籤之間;
第二種方式是將JavaScript程式碼存為一個副檔名為.js的獨立檔案,典型做法是在文件的<head>部分放一個<script>標籤,並把它的src屬性指向.js檔案。

2.JavaScript的註釋:
單行註釋://   或者   <!--   (注意與HTML區分,無結束符)
多行註釋:/*  JavaScript 註釋  */
注:Html的註釋只有一種:<!-- HTML註釋 -->

3.變數:
       有很多語言要求在使用任何變數前必須先對它做出“介紹”,也稱為宣告,而JavaScript允許程式設計師直接對變數賦值而無需事先宣告。
       在JavaScript中語言裡,變數和其他語法元素的名字都是區分字母大小寫的。變數名允許包含字母、數字、$、以及下劃線(但第一個字元不允許是數字)。駝峰式命名是函式名、方法名、物件屬性名等命名的首選格式。

4.資料型別
    在有些語言中要求在宣告變數的同時還必須宣告變數的資料型別,這種方法稱為型別宣告。像這種明確型別宣告的語言稱為強型別語言。JavaScript不需要進行型別宣告,因此它是一種弱型別語言。這意味著程式設計師可以在任何階段改變變數的資料型別。
4.1字串
    字串由零個或多個字元構成,字元包括(但不限於)字母、數字、標點符號和空格。字串必須在引號裡,單引號或雙引號都可以。需要注意的是,當在字串內出現容易引起歧義的引號時,我們需要對這個字元進行轉義。如:var height = " about 5'10" tall ",這裡到10後面的“,就會認為它是這個字串的結束標誌,所以我們需要轉義:
       var height = " about 5'10 \"  tall "。
4.2數值
    JavaScript允許使用帶小數點的數值,即浮點數、整數、負數等。
4.3布林值
    布林資料只有兩個可選值——true或false。需要注意的是,布林值不是字串。布林值true和字串”true“是兩碼事!
4.4陣列
    字串、陣列和布林值都是標量。如果某個變數是標量,它在任意時刻就只能有一個值。如果想用一個變數來儲存一組值,就需要使用陣列。
    陣列是指用一個變量表示一個值得集合,集合中的每個值都是這個陣列的一個元素。在JavaScript中,陣列可以用關鍵字Array宣告。
    var  beatles = Array(4);
注:若無法預知陣列長度,可以在宣告陣列時不給出元素個數,var beatles = Array();
向陣列中新增元素的操作稱為填充。
    beatles[0] = "John";
    beatles[1] = "Paul";
    beatles[2] = "George";
    beatles[3] = "Ringo";
向上述填充陣列有些麻煩,有一種相對簡單的方式:在宣告陣列的同時對它進行填充,這種方式要求用逗號把各個元素隔開:
    var beatles = Array( "John","Paul","George","Ringo" );
我們可以不明確地表明是在建立陣列,,即只需用一對方括號把各個元素的初始值括起來就可以了:
    var beatles = [ "John","Paul","George","Ringo" ];
陣列元素不必非得是字串。可以存布林值,數值,變數,另一個數組的元素,甚至可以包含其他的陣列。還可以多種型別混合在一起存入一個數組。
    var lennon = [ "John",1940,false ];                           //多種型別混合在一起存入一個數組

    var name = "John";                                   //陣列元素是變數
    beatles[0] = name;

    var names = [ "John","Paul","George","Ringo" ];        //陣列元素是另一個數組的元素        
    beatles[0] = names[3];

    var lennon = [ "John",1940,false ];                      //陣列元素包含其他的陣列
    var beatles = [ ];
    beatles[0] = lennon;
在填充陣列,為新元素給出下標時,不必侷限於使用證書數字,也可以用字串,這樣的陣列叫做關聯陣列。但不推薦使用。
    var lennon = Array();
    lennon["name"] = "John";
    lennon["year"] = 1940;
    lennon["living"] = false;
4.5物件
    與陣列類似,物件也是使用一個名字表示一組值。物件的每個值都是物件的一個屬性。與使用Array類似,建立物件使用Object關鍵字。它不使用方括號和下標來獲取元素,而是像任何JavaScript物件一樣,使用點號來獲取屬性。
    var lennon = Object();
    lennon.name = "John";
    lennon.year = 1940;
    lennon.living = false;
建立物件還有一種更簡潔的語法,即花括號語法:{ propertyName:value, propertyName:value }
    var lennon = { name:"John",year:1940,living:false }

    物件是自包含的資料集合,包含在物件裡的資料可以通過兩種形式訪問——屬性和方法。
    屬性是隸屬於某個特定物件的變數;        Object.property
    方法是隻有某個特定物件才能呼叫的函式。    Object.method()
    物件就是由一些屬性和方法組合在一起而構成的一個數據實體。為給定物件建立一個新例項需要使用new關鍵字。
    內建物件:在JavaScript中預先定義好的,可以拿來就用的物件稱為內建物件,陣列就是其中一種。此外,還有Math物件和Date物件等。它們分別提供了許多非常有用的方法供人們處理數值和日期值,如Math物件的round方法可以把十進位制數值舍入為一個與之最接近的整數。Date物件可以用來儲存和檢索與特定日期和時間有關的資訊。在建立Date物件的新例項是=時,JavaScript直譯器將自動地使用當前日期和時間對它進行初始化:
    var current_date = new Date();
Date物件提供了getDay()、getHours()、getMonth()等一系列方法。
    宿主物件:除了內建物件,還可以在JavaScript腳本里使用一些已與定義好的其他物件。這些物件不是由JavaScript語言本身而是由它的執行環境提供的。具體到web應用,這個環境就是瀏覽器。由瀏覽器提供的預定義物件被稱為宿主物件。
    宿主物件包括Form、Image、Element,document等。document物件可以用來獲得網頁上的任何一個元素的資訊。

5.操作
    操作符是JavaScript為完成各種操作而定義的一些符號。+、-、*、/、++、+=等。
    加號是一個比較特殊的操作符,它既可以用於數值,也可以用於字串。
注: alert("10" + 20);        //結果為1020
    alert(10 + 20);            //結果為30

6.函式
    如果需要多次使用同一段程式碼,可以把它們封裝成一個函式。函式就是一組允許在你的程式碼裡隨時呼叫的語句。每個函式實際上是一個短小的指令碼。定義函式的語法:
    function name(arguments){
        statements;
    }
變數的作用域:
全域性變數:可以在指令碼中的任何位置被引用。作用於是整個指令碼。
區域性變數:只存在於宣告它的那個函式的內部,在那個函式的外部是無法飲用它的。區域性變數的作用於只限於某個特定的函式。
    如果在某個函式中使用了var,那個變數就將被視為一個區域性變數,它只存在於這個函式的上下文中;反之,如果沒有使用var,那個變數就將被視為一個全域性變數,如果腳本里已經存在一個與之同名的全域性變數,這個函式就會改變那個全域性變數的值。