假設func被現有的功能:
案例1,如果你的函數返回一個值,你要存儲的結果,如:
function times_ten(num){ return num*10; }
var ten = 10;
var hundred = times_ten(ten);
所以,現在你可以使用從現在開始變量hundred
。
案例2,如果你不返回一個值,或者你並不需要保存:
function write_times_ten(num){ num = num*10; document.write(num); }
var ten = 10;
var hundred = write_times_ten(ten);
案例3要稍微複雜一點。
如果你這樣做var something={a:function(){}}
- 通過創建一個像這樣的對象,你的所有函數都在同一個範圍內,所以你不會污染全局命名空間。這有點像在其他語言中創建一個類。 jQuery是這個我能想到的最大的例子,因爲它所做的全部都是由對象jQuery
處理的(或者調用一個函數,如jQuery.parseJSON(json_string)
如果你傳遞一個對象這樣的功能,那麼你問Func()
做與功能的東西,你通過了,像這樣:
function do_something_times_ten(options){
options.num = options.num*10;
options.do_something(num);
}
var ten = 10;
do_something_times_ten({num:ten,
do_something:function(num){
num = num*10;
document.write(num);
}
}
);
現在就寫出來1000,而不是100。
來源
2013-01-10 23:09:34
Max
這是一個有點廣泛,你可以使它更具體,更少的列表所有的問題? –
我認爲這只是歸結爲co ding的風格,但生病讓別人解釋它;-) – Stokedout
假設'Func'是一個函數,你的案例#2語法無效(或至少做一個非常不同的事情) – Bergi