1. 程式人生 > >JavaScript從入門到精通-學習筆記

JavaScript從入門到精通-學習筆記

  • 必須瞭解的JavaScript知識

  1. 正式名稱ECMAScript
  2. JavaScript是一種基於物件和事件驅動並具有安全效能的指令碼語言。目的是與html和java applet一起實現在一個web頁中連結多個物件,與客戶端互動的。
  3. JavaScript特點:基於物件,也被看做面向物件。以事件驅動的,對使用者事前響應。具有非常高的安全性,不允許訪問本地硬碟/不能將資料存入伺服器。有跨平臺性,強依賴瀏覽器。
  4. 與java不同。弱變數,x=1234;y=“4321”;變數在使用前可以不宣告。在html中使用<Script></Script>,java用<applet></applet>。動態編譯。
  •  程式設計規範

變數

顯示命名:var 變數名; var 變數名1, 變數名2; 隱式宣告:通過“=”宣告。變數名=22; 變數名=“123”;避免所有字母大寫 a = “URL”,因為js中不存在靜態變數。

資料型別

六種。

整型:intN = 1; 字串 strS = "sss";  布林型  blnB = true;   空值 null; 未定義,是一種狀態與null不同;

物件:var myObject = {} 

var myClass{

   num:12

}

陣列:

var star = new Array();

star[0]=1;

var star = {1,2};

var star = new Array(1,2,3);

表示式

表示式1

表示式2;

操作符

in:包含在一個表示式或物件中

var myObj = {               start = "a"            };           if(start in myObj){           }

delete 刪除陣列元素,刪除物件的屬性

 typeof 返回變數型別  。數字返回number,字元返回string,物件返回object.可以區分null和未定義

var start = {}

if(typeof(start) == "object"){}

void操作符?

資料轉換

var myString = String(100);

var myNum = Number("100");

布林值,在數字環境true為1,字串環境true為“true”

條件和迴圈控制

for...in

var start = new object;

start.name = "a";

start.type = "x";

for(var startProp in start){

  alert(startProp +"="+start[startProp]);

}

函式

  宣告

  function func_name(parm1 , parm2){

      retrun parm1;

  }

可以將隱式函式賦值給變數:

func_var = function(parm1 , parm2){

   retrun parm1;

}

呼叫

呼叫函式名:func_name(1,2); 呼叫變數func_var(1,2);

函式結束體後直接呼叫:

(function(parm1 , parm2){

      retrun parm1;

  })(parm1,parm2);

程式中有多個同名函式,位置靠後的函式自動覆蓋靠前的函式

函式可以巢狀

function fun_parent(parm1 , parm2){

    function func_sub(){}

     retrun parm1;

}

物件

建立物件

var star = new Object;

var star = {};

新增屬性

star.name = "aa";

顯示屬性

通過for....in..

查詢屬性

if(“Polaris” in star)

建立命名物件

star["polaris"] = new Object

star["polaris"].name = "a";

star["polaris"] = new star("a");

陣列方法:

新增元素 concat返回連結新陣列

var myArray = new Array();

myArray[0]=0;

myArray = myArray.concat(1);

join返回陣列元素組成字串

start.join(*),可以返回用*分割的

push/pop末尾新增刪除,shift/unshift頭新增或刪除

錯誤處理

try {

}catch(errorObject){

}finally{}

onerror事件:

新增到window物件

window.onerror = errorHandler;

function errorHandler(){

}t

新增到image物件