Javascript函式詳解

2021-07-30 22:55:31 字數 1449 閱讀 8987

js中的函式是物件,每個函式都是function型別的例項,函式名只是乙個指向函式物件的指標,不會和函式繫結。js函式宣告方法如下:

//方法一

function

sum(num1,num2)

//方法二

var sum = function

(num1,num2); //注意分號,sum是函式的引用

//方法三

var sum = new

function("num1","num2","return num1+num2") //不推薦

函式名是指向函式的指標,也就是說乙個函式可以有多個指標指向它

function

sum(num1,num2)

var anothersum = sum;

sum = null;

alert(anothersum(10,10)); //20

js的函式沒有過載的概念

function

addsomenumber

(num)

function

addsomenumber

(num)

alert(addsomenumber(100)); //300 第二個會覆蓋第乙個

函式宣告和函式表示式

alert(sum(10,10));

function

sum(num1,num2)

//可以正常執行,js解析器會通過乙個名為函式宣告提公升的過程,把函式放到前面

alert(sum(10,10));

var sum = function

(num1,num2)

//錯誤!函式位於乙個初始化的語句中

函式可以當做引數傳遞,也可以將乙個函式作為另乙個函式的返回值返回,典型的列子是:物件陣列排序問題(以某個屬性排序)

function

createcomparisonfunction

(propertyname)else

if(value1 > value2)else

}}var data = [,];

data.sort(createcomparisonfunction("name"));

alert(data[0].name); //nb

關於sort的方法可以參考我之前的文章ecmascript引用型別之array型別

JavaScript陣列操作函式方法詳解

該方法不會改變現有的陣列,而僅僅會返回被連線陣列的乙個副本。例如 1 輸出結果 1,2,3,4,5,11,22,33 把陣列的所有元素放入乙個字串。元素通過指定的分隔符進行分隔。例如 1 list結果 這是迄今為止最快的方法!使用原生 如 join 不管系統內部做了什麼,通常比非原生快很多。jame...

詳解JavaScript儲存

儲存大小 4kb左右,以20個為上限,清理機制 ie和opera會清理近期最少使用的cookie,firefox會隨機清理cookie。主要應用 購物車,登入狀態 缺陷 同域內http請求都會帶cookie,浪費頻寬 cookie常見攜帶引數 屬性項屬性項介紹 name value 鍵值對,可以設定...

JavaScript 事件詳解

描述的是在頁面中接受事物的順序 由最具體的元素接收,然後逐級向上傳播至最不具體的元素節點 文件 最不具體的節點接收事件,而最集體的節點應該是最後接收事件 直接新增到html結構中 按鈕 這種處理方式,存在修改函式名,需要到html中修改事件呼叫的函式名的問題 把乙個函式賦值給乙個事件處理程式屬性 解...