·函數定義:函數
var a=2; function add(i){ if(i>0){ return 1; }else{ return 2; } } add(a); console.log(add(a));
function //函數定義spa
add //函數名稱code
(i) //形參,多個形參能夠用 , 隔開對象
{} //函數體 能夠包含若干語句 也能夠沒有語句blog
add(a) //實參,是將 a 的值付給形參 i (函數調用)io
注:函數內部的語句 ,執行到return時,函數執行完畢,並將結果返回。所以,函數內部經過條件判斷和循環能夠實現很是複雜的邏輯。console
若是沒有return
語句,函數執行完畢後也會返回結果,只是結果爲undefined。
function
·第二種定義方式:(JS自己是一個對象,函數名其實是一個函數對象,因此函數名能夠視爲指向該函數的變量)class
var abs = function (x) { if (x >= 0) { return x; } else { return -x; } };
·函數調用變量
add(a) //實參,是將 a 的值付給形參 i (函數調用)傳入的參數比定義的少也沒有問題:
·arguments
只在函數內部起做用,而且永遠指向當前函數的調用者傳入的全部參數。相似Array
但它不是一個Array。
function foo(x) { for (var i=0; i<arguments.length; i++) { console.log(arguments[i]); // 10, 20, 30 } } foo(10, 20, 30);
明日持續更新。。。。。。