一、函式的宣告及呼叫
1.函式的宣告格式:
function 函式名(引數1,引數2,.....)
函式的呼叫:
1)直接呼叫:函式名(引數1的值,引數2的值,......);
文件注釋:
2)事件呼叫:在html標籤中,使用事件名="函式名()"
2.函式的注意事項:
1)函式名必須要符合小駝峰法則,首字母小寫,之後每隔單詞首字母大寫;
2)函式名後面的括號中,可以有引數,也可以沒有引數,分別稱為有參函式和無參函式;
3)宣告函式時的引數列表,稱為形參列表,形式引數。(變數的名字)
呼叫函式時的引數列表,稱為實參列表,實際引數。(變數的賦值)
4)函式的形參列表個數,與實參列表的個數,沒有實際關聯關係。
函式引數的個數,取決於實參列表。
如果實參列表的個數《形參列表,則未賦值的形參,將為undefined。
5)函式可以有返回值,使用return返回結果
呼叫函式時,可以使用乙個變數接收函式的返回結果。如果函式沒有返回值,則接收的返回值為undefined。
6)函式中變數的作用域:
在函式中使用var宣告的變數為區域性變數,只能在函式內部訪問,不用var宣告的變數為全部變數,在函式外面也能訪問。
函式的形參列表預設為函式的區域性變數,只能在函式的內部使用。
7)函式的宣告與函式的呼叫沒用先後之分。即,可以在宣告函式前,呼叫函式。
二、 匿名函式的宣告和使用
1.宣告乙個匿名函式,直接賦值給某乙個事件;
2.使用匿名函式表示式。將匿名函式,賦值給乙個變數。
宣告:var func=function()
呼叫:func();
注意:使用匿名函式表示式時,函式的呼叫語句,必須放在函式宣告語句之後!!!(與普通函式的區別)
【js**的執行順序問題】
js**在執行時,會分為兩大部分。檢查裝載和執行階段。檢查裝載階段:會先檢測**的語法錯誤,進行變數、函式的宣告
執行階段:變數的賦值、函式的呼叫等,都屬於執行階段。
以下**為例:
原因:上述**的執行順序為:
---------------檢查裝載階段--------------
var num;
function func1(){};
function func2;
---------------執行階段--------------
console.log(num);
func1();
func2()=function(){};
3.自執行函式:
1)可以使用多種運算子開頭但一般用!
!function(形參列表){}(實參列表)
2)使用()將函式及函式後的括號包裹
(function(){}());
3)使用()值包裹函式值
(function(){})();
三種寫法特點:
1)使用!開頭,結構清晰,不容易混亂,推薦使用;
2)能夠將匿名函式與呼叫的()為乙個整體,官方推薦使用;
3)無法表明函式與之後的()的整體性,不推薦使用。
三、函式的內部屬性
1.arguments物件
1)作用:用於儲存呼叫函式時的所有實參。
>>>當呼叫函式,並用實參賦值時,實際上引數列表已經儲存到arguments陣列中,可以在函式中,使用arguments[n]的形式呼叫,n從0開始。
2)arguments陣列的個數,取決於實參列表,與形參無關。但是,一旦第n個位置的形參、實參、arguments都存在時,形參將與arguments繫結,同步變化。即,在函式中,修改形參的值,arguments也會改變,反之亦成立。
3)arguments.callee是arguments的重要屬性。表示arguments所在函式的引用位址;
在函式裡面,可以使用arguments.callee()呼叫函式本身。
在函式內部,呼叫函式自身的寫法,叫做遞迴。
遞迴分為兩部分:遞和歸。以遞迴呼叫語句為界限,可以將函式分為上下兩部分。
遞:當函式執行上半部分。遇到自身的呼叫語句時,繼續進入內層函式,再執行上半部分。直到執行完最內層函式。
歸:當最內層函式執行以後,再從最內層函式開始,逐漸執行函式的下半部分。
當最外層函式執行時,遇到自身的呼叫語句,會進入內層函式執行,而外層函式的後半部分不執行。直到最內層函式執行完以後,再逐步向外執行。
location物件
取到瀏覽器的url位址資訊;
完整的url路徑:
協議名://主機名(ip位址):埠號/檔案所在路徑?傳遞引數(name1=value1&name2=value2) #錨點
例如:
其他使用location提供的方法跳轉頁面的方式
history:瀏覽歷史
js匿名函式
js中定義函式的方式有多種,函式直接量就是其中一種。如var fun function 這裡function如果不賦值給fun那麼它就是乙個匿名函式。好,看看匿名函式的如何被呼叫。1 執行後得到返回值的函式呼叫 js 方式1,呼叫函式,得到返回值。強制運算子使函式呼叫執行 function x,y ...
js匿名函式
匿名函式的宣告和使用 1.宣告乙個匿名函式,直接賦值給某乙個事件 window.onload function 2.使用匿名函式表示式。將匿名函式,賦值給乙個變數。var func function func 注意 使用匿名函式表示式時,函式的呼叫語句,必須放在函式宣告語句之後!3.自執行函式 三種...
JS 匿名函式
匿名函式的應用 1 將乙個匿名函式儲存在變數中 var sayname function 2 將乙個匿名函式儲存在物件的方法中 var person 3 將乙個匿名函式作為 函式 settimeout function 1000 函式作為物件可以動態的新增屬性,針對這個功能我們可以在編寫 時有諸多技...