2013-09-05 33 views
1

它可以檢查是否功能期待/需要什麼數據?檢查功能指望任何數據

function one(){ 

} 
function two(ineedvar){ 

} 

所以我必須的功能,我想檢查他們之間需要var()之間的變量。

+0

不,你不能這樣做* *可靠。但是通常要這樣做*是設計有缺陷的標誌。你需要什麼? –

+0

見http://stackoverflow.com/a/9924463/1873485 – TheSharpieOne

+2

不要忘記 - 一個功能沒有定義任何參數來接受他們 - 它可以訪問'arguments'對象 – Ian

回答

6

您可以使用該功能的.length性能,看它是否需要任何參數。

two.length

Fiddle

Reference

但要注意,功能還可以採取arguments而不必在它的函數聲明定義它,所以不能依賴於始終。在Function對象的

+3

哇,我不知道這個! – Mathletics

2

使用length屬性:

one.length /* 0 */ 
two.length /* 1 */