程序三種基本結(jié)構(gòu)--順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
1、選擇結(jié)構(gòu):
if語句
if (判斷條件) {
執(zhí)行語句
}else if (判斷條件) {
執(zhí)行語句
}else{
執(zhí)行語句
}
switch語句
case里必須是具體的值,但是如果表達式可以返回一個具體的值true或者false也可以是表達式,這時switch里面是true
switch(表達式) {
case 取值:
執(zhí)行語句
break;
case 取值:
執(zhí)行語句
break;
default:
執(zhí)行語句
}
2、循環(huán)結(jié)構(gòu):
for語句:1初始化表達式、2控制表達式、3循環(huán)后表達式
for(var i = 0; i < n ; i ){
執(zhí)行語句
}
while語句
var i= 0;
which (判斷條件){
執(zhí)行語句
}
do while 語句 先執(zhí)行后判斷至少執(zhí)行一次
var i = 0;
do {
執(zhí)行語句
}while(判斷條件)
二、數(shù)組
1、數(shù)組的聲明
①通過構(gòu)造函數(shù)
var arr = new Array ();
②通過字面量
var arr = [];
2、數(shù)組的賦值和取值
賦值:arr [索引號] = 1;
批量賦值 for循環(huán)
取值:arr [索引號];
3、數(shù)組的遍歷 ---- 批量取值
for (var i = 0; i < arr.length; i ){}
4、防止稀疏數(shù)組 arr (arr.length) = i;
三、函數(shù)
1、函數(shù)的定義和調(diào)用
函數(shù)的定義
①函數(shù)的聲明:function 函數(shù)名 () {
函數(shù)體(要執(zhí)行的代碼)
}
②函數(shù)表達式:var 函數(shù)名 = function () {
函數(shù)體
};
函數(shù)的調(diào)用:函數(shù)名 ();(要調(diào)用先引用)
2、函數(shù)的參數(shù)
有參數(shù)的函數(shù)的聲明:function 函數(shù)名 (參1,參2) { //函數(shù)聲明時的參數(shù)只是一個占位符,是形式參數(shù)
函數(shù)體
}
有參數(shù)的函數(shù)的調(diào)用:函數(shù)名 (參1,參2) //函數(shù)調(diào)用時傳入的參數(shù)是具體的數(shù)值,是實際參數(shù)
形參和實參沒有關(guān)系,只不過在調(diào)用的時候把實參的值復(fù)制了一份賦值給了形參
3、函數(shù)返回值
①return 要返回的值;(函數(shù)的返回值是什么,尹調(diào)用這個函數(shù)就相當(dāng)于調(diào)用了什么)
②函數(shù)在執(zhí)行完成return語句后便會退出函數(shù),后面的代碼不會執(zhí)行
③如果只打印函數(shù)名,會通過函數(shù)名找到函數(shù)體,如果想打印的是函數(shù)的返回值,那么一定要加小括號()
4、匿名函數(shù)
匿名函數(shù):函數(shù)定義完后就賦值給了一個變量,通過變量名來調(diào)用這個函數(shù),所以就沒有必要起名字
5、遞歸函數(shù)
函數(shù)自己調(diào)用自己的編程技巧
6、回調(diào)函數(shù)
被當(dāng)做函數(shù)傳遞的函數(shù)
四、對象
通過對象可以方便的對變量和函數(shù)進行管理和使用
1、鍵值對:一種對應(yīng)關(guān)系,通過鍵能夠方便地找到值 key:value; 對象也是鍵值對
屬性名:屬性值、索引:元素的值
2、對象的聲明
①通過構(gòu)造函數(shù)
var obj = new.Object();
②通過字面量
var obj = {};
3、屬性:用來描述對象的特征 一般是名詞 對應(yīng)變量
定義:對象.屬性名 = 要賦的值;
調(diào)用:對象.屬性名;
4、方法:用來描述對象的行為 一般是動詞 是一種函數(shù)(屬于某個對象的函數(shù)就叫方法)
定義:對象.方法名 = function(){ //函數(shù)體 };
調(diào)用:對象.方法名;
5、訪問屬性的兩種方式
①點語法(屬性名是什么就必須寫什么):obj.屬性名;
②中括號(通過字符串找屬性名,字符串可以通過編程拼接):obj['屬性名'];
6、遍歷的兩種方式
①for循環(huán)
②for-in
for(var k in json) { 語句 }
k變量代表的是json中的各個屬性(key)和 var i = 0中的i是一個意思 名字不同而已
json JavaScript Object Notation(JavaScript對象標(biāo)記法)是仿照JS中對象字面量的格式去書寫的一串 用來記錄對象數(shù)據(jù)的字符串,可匡以用于數(shù)據(jù)傳輸。
7、Null
null常被用于期望一個對象,但是當(dāng)前先不附加任何值的情況
undefined派生自null
undefined == null //true
undefined === null //false