1. 程式人生 > >傳智播客javascript視訊教程(楊中科)學習筆記

傳智播客javascript視訊教程(楊中科)學習筆記

這套視訊僅僅講述了JS的除錯,引用,array,和for迴圈的知識。非常的基礎,很多其他內容沒有涉及到。拿出一天來學習足以。

以下是這套視訊的下載地址,共十八級:

http://www.itcast.cn/news/bd4612c7/a940/4585/9153/487bbcc7fcd3.shtml

由於沒有下載到課件,便把視訊中的知識點一一寫了下來,如下:

第一集 javascript簡介

1什麼是javascript

Html沒有計算和判斷能力,有時要求能在瀏覽器進行一些簡單的運算和判斷。Javascript就是一種在瀏覽器端執行的語言。

2來源

和java沒直接的聯絡,它只是吸收了java的一些特性。

3本質

Javascript是解釋性語言,無需變異就可以隨時執行,這樣哪怕語法有錯誤,沒有語法錯誤的部分還是能正確執行。

注:c#可以用csc.exe來進行編譯。

第二集  JS入門1

1開發環境

VS2010中可以直接開發;VS2008需要安裝VS2008SP1和VS90SP1-KB958502-X86

2關於“.”

JS並不像C#那麼嚴謹,“.”不出來的也許能用,“.“出來的不一定能用

3<script type=”text/javascript”/>標籤

將js語句放在次標籤中。

4 alert()

相當於c#中的messagebox()

如alert(new Date().tolocalstring());

5 放到head中的<script>在body載入之前就被執行了。

第三集引用外部JS檔案

1建立一個common.js檔案

檔案中直接寫js程式碼

2引用

在html的head標籤中寫入

<script src=”common.js”type=”text/javascript”/>

第四集事件

1 超連結(HTML)

<a href=”javascript:alert(‘hello’)”>點一下</script>

點選此超連結時,自動執行了js的函式alert;注意alert輸入是單引號,這樣很方便書寫。

注:thunder://迅雷、qq://騰訊、ftp”//是ftp、ed2k://電驢;我們也可以自己自定義一個頭。

2超連結事件

<a href=”1.htm”onclick=”alert(‘hello’)”>點一下</a>

3button事件

<input type=”button” value=”點”onclick=”alert(‘點我’)”/>

第五集JS變數

1 JS既可以用雙引號宣告字串,也可以用單引號

2 js中有null/undefined兩種,都表示一個變數為空,初學者先不管兩者區別。

3 JS是若型別語言,因此int i=0是錯的;只能通過vari=0;指向int後,一會兒還可以給i指定為其他資料型別,嫁雞隨雞嫁狗隨狗;這區別於c#

第六集 JS的除錯

1 js有錯誤後,ie左下角有黃色‘!’標誌

2 將所在html頁面設定為起始頁,然後打斷點;點選啟動便可以除錯了。

3注意在internet選項-高階-禁用指令碼提示取消。

第七集JS判斷變數初始化

1 var x;

If(x==null)…

2 if(typeof(x)==”undefined”)…

3 if(!x)….//如果x為空,則!X為true;如果x為false,則!X也為true

第八集函式的宣告

1 格式:

Function 函式名(引數1,引數2)//不需要標記引數型別

{ 。。。}

如:function add(i1,i2){

return i1+i2;

}

推薦使用上面的格式,即大括號{與函式頭在一行。

2 jS裡不要求函式”所有路徑都需要返回值“。

第九集匿名函式(類似c#中的匿名函式)

1用法:

Var f1=function(i1,i2){

Return i1+i2;

}

Alert(f1(1,2));

2類似於c#中的匿名函式

3 甚至可以這樣用:

Alert(

function(i1,i2){

Return i1+i2;

}(1,2)

);

第十集JS面向物件初步

1JS沒有定義類的語法

2用函式閉包模擬類。

3例如:

Function Person(name,age){

  This.Name=name;//不必再定義一個Name變量了。

This.Age=age;

This.sayhello=function(){alert(this.Name)};

}

Var p1=new Person(“tom”,30);//在JS中,方法就可以當做“類“來使用了,JS是沒有類的。

P1 .sayhello();

4 還可以在方法外面動態增加屬性,如上例中的Person方法:

P1.Gender=”男”;

即例項化Person為P1後,可以為P1增加一個屬性Gender;

第十一集 Array物件

1 JS中的陣列是一個動態大小的,可以隨時加成員

2 用法:

Var names=new Array();

Names[0]=”ss”;

Names[1]=”ee”;

3遍歷陣列

For(var i=0;i<arr.length;i++){

Alert(names[i]);

}

第十二集 Array聯絡1求最大值

Function GetMax(arr){

Var max=arr[0];

For(var i=0;i<var.length;i++){

If(arr[i]>max){

Max=arr[i];

}

}

Return max;

}

第十三集array練習2陣列反轉

將一個字元陣列次序反轉。注意不要使用JS中的反轉函式。

Function MYreverse(arr){

For(int i=0;i<arr .length/2;i++){

Var temp=arr[i];

Arr[i]=arr[arr.length-i-1];

Arr[arr.length-i-1]=temp;

}

Return arr;

}

第十四集array練習3 陣列變字串用’|’隔開

Function myjoin(arr){

If(arr .length<=0){

Return ;

}

Var s=arr[0];

For(var i=1;i<arr.length;i++){

S=s+”|”+arr[i];

}

Return s;

}

第十五集練習4

1實踐證明傳遞arr引數時傳遞的不是拷貝而是引用。

2在htm中<script>標籤中執行JS時方法的定義和呼叫方法等語句都是並列的,並逐行執行!

第十六集array的字典用法

1 JS中的array既可以是陣列,也可以是dictionary,還是一個stack。

2 字典用法:

Var dict=new Array();

Dict[“人”]=”ren”;

Dict[“口”]=”kou”;

Alert(dict[“口”]);

3 也可以當做棧來用。

4 其實陣列也可以看做一個特殊的dictionary.

5 通過for來遍歷array

For(var k in dict){

Alert(k);//k是dict的序號,而非值。值應該用dict[k]表示。

}

第十七集array的簡化宣告

1 var arr={3,4,5,6};

2 var arr={“tom”:30,”jim”:20};

3 正式宣告方法:var arr=newarray();arr[“0”或者0]=“something”;

第十八集用for獲取物件的成員

1 用for取array取到的是key的值。

2 在JS中,物件的成員是以物件的Key的形式出現的。因此獲取物件的成員可以像獲取array的key一樣的語法:

For(var e in 物件)

{

Alert(e);

}