1.3 JavaScript基礎概念

語法:JavaScript的語法格式類似於C語言以及Java、Perl的語法,如果有以上語言的背景,接收起來是很容易的,下面就具體羅列一下JavaScript的語法格式:

區分大小寫,變量、函數名和操作符都區分大小寫

 

下面的內容在以下方面介紹JavaScript的基礎概念:

標識符

註釋

變量

數據類型

操作符

語句

函數



標識符

格式如下:

         第一個字符必須是一個字母、下劃線(_)或一個美元符號($);
                    其他字符可以是字母、下劃線、美元符號或數字

註釋

使用 C 風格的註釋,包括單行註釋和塊級註釋

       

// 單行註釋

/*
 *  這是一個多行
 * (塊級)註釋
 */

變量

JavaScript是弱類型語言,定義變量僅僅有一個var關鍵字,系統會自動的判別數據類型,且var關鍵字可以省略(不推薦),JavaScript的變量也會區分局部變量和全局變量,有一個特殊點是,若在方法中省略var關鍵字,定義的則是全局變量

var x = 10; //全局變量
function test(){
    var y = "hi"; // 局部變量
    z = 18.5;
}
test();
alert(x); //正確
alert(y); // 錯誤!
alert(z); //正確

數據類型

ECMAScript 中有 5 種簡單數據類型(也稱爲基本數據類型):Undefined、Null、Boolean、Number和 String。還有 1 種複雜數據類型——Object,Object 本質上是由一組無序的名值對組成的,不支持自定義類型。

typeof()可以判別數據類型,返回的是上述六種數據類型之一,具體如下:

"undefined"  ——如果這個值未定義;
           "boolean"     ——如果這個值是布爾值;
            "string"        ——如果這個值是字符串;
            "number"     ——如果這個值是數值;
            "object"        ——如果這個值是對象或 null;
            "function"     ——如果這個值是函數。

下面的幾個typeof()實例是比較特殊的:

var car = null;
alert(typeof car); // "object"

alert(null == undefined); //true   //因爲undefined 值是派生自 null 值

alert(NaN == NaN); //false

再介紹幾個函數:

idNAN()    判斷是不是非數字

Number()   數據類型轉換數值類型

parseInt()  轉換成整數

toString()    轉換成字符串

String()    轉換成字符串,可以轉換沒有toString()方法的變量

操作符

遞增和遞減操作符 ++ --

加和減操作符  +  -

按位與或非異或   & | ~ ^

左移 有符號右移 無符號右移   <<   >>   >>>

邏輯與或非   &&  ||   !

乘和除和求模   *   /  %

關係操作符(大於 小於  大於等於  小於等於)   >   <   >=   <=   

比較操作符 (等於 不等於  全等  不全等)  ==    !=    ===   !==

賦值運算符   =

條件運算符    ? :

語句

if語句

if(條件)){語句體}

if(條件){語句體}else{語句體}

if(v){語句體}else if(條件)){語句體}else{語句體}

do-while語句

do{語句體}while(條件);

while語句

while(條件){語句體}

for語句

for(迭代變量;迭代條件;迭代變化){語句體}

for-in(foreach)語句

for(迭代變量 in 迭代數據){語句體}

switch語句

switch(一句值){case 可能值: 語句體;default:語句體;}

下面是實例:

//if語句
if (i > 25)
    alert("Greater than 25."); // 單行語句
else {
    alert("Less than or equal to 25."); // 代碼塊中的語句
}

if (i > 25) {
    alert("Greater than 25.");
} else if (i < 0) {
    alert("Less than 0.");
} else {
    alert("Between 0 and 25, inclusive.");
}

//do-while語句
var i = 0;
do {
    i += 2;
} while (i < 10);
alert(i);

//while語句
var i = 0;
while (i < 10) {
    i += 2;
}

//for語句
var count = 10;
for (var i = 0; i < count; i++){
    alert(i);
}

//for-in語句
for (var propName in window) {
    document.write(propName);
}

//switch語句
switch (expression) {
    case value: statement
        break;
    case value: statement
        break;
    case value: statement
        break;
    case value: statement
        break;
    default: statement
}

函數

函數可以封裝任意多條語句,而且可以在任何地方、任何時候調用執行。ECMAScript 中的函數使用 function 關鍵字來聲明,後跟一組參數以及函數體。下面是格式:

function 函數名(參數列表) {
                     函數體
           }
 

function sayHi(name, message) {
    alert("Hello " + name + "," + message);
}

 JavaScript中調用時的參數可以與定義時的個數不一致,且JavaScript的函數沒有重載的說法


 





 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章