2014-10-19 96 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()); 
相关问题