2014-10-19 173 views
0

我是新來的jQuery,並有此功能:如何將函數的返回值存儲在變量中?

var numberOfItems = function() { 
    $('.item_fields input[type="hidden"]').filter(function() { 
    return $.trim($(this).val()) == 'false'; 
    }).length; 
} 

當我與alert(numberOfItems);調用它,而不是將其輸出輸出功能代碼本身就是一個整數

function() { 
    $('.item_fields input[type="hidden"]').filter(function() { 
    return $.trim($(this).val()) == 'false'; 
    }).length; 
} 

我猜我必須的在這裏錯過了真正重要的東西?

感謝您的任何幫助。

+1

你不需要把它包在__FUNCTION__,你只需要'變種numberOfItems = $('。item_fields input [type =「hidden」]')。filter(function(){ return $ .trim($(this).val())=='false'; })。length; ' – Grundy 2014-10-19 20:33:45

回答

1
  1. ,除非你把return在最後的開始(在這種情況下,只有)語句您的函數不返回任何東西。

  2. 您需要請致電獲取其返回值的函數。 numberOfItems只是「提」功能;它的值是函數對象。 numberOfItems()正在調用該功能。 ()是使用參數調用函數的運算符。

1

返回從函數的值:

var numberOfItems = function() { 
    return $('.item_fields input[type="hidden"]').filter(function() { 
    return $.trim($(this).val()) == 'false'; 
    }).length; 
}; 

然後調用這樣的功能:

alert(numberOfItems()); 
相關問題