如何从函数返回计数

时间:2016-11-12 06:25:32

标签: javascript

嗨,我刚接触javascript,我试图从函数中返回一个计数,我的代码如下所示

我的代码

function moredbCount(contentMoreArray2, ArrHeading) { 
  var sampleArr = [];
  for (var a = 0; a < contentMoreArray2.length; a++) {
    if (ArrHeading !== 'More') {
      var fullHeading = ArrHeading + '-' + contentMoreArray2[a].name;
    } else {
      fullHeading = contentMoreArray2[a].name;
    }
    sampleArr.push(fullHeading);    
  }
  var sampleCount = sampleHeadingCount(sampleArr);
  return sampleCount.then(function (resultantCount) {
    return resultantCount;  //Here iam getting some count like 10 and returning it to the function;  
  });
}
var contentCount; 
 var totalCount = moredbCount(contentMoreArray2, ArrHeading);
 totalCount.then(function (resultantTotalCount) {      
      return contentCount = resultantTotalCount
    });
// Here i want to use contentCount 10, But iam getting undefined

提前致谢

1 个答案:

答案 0 :(得分:2)

return contentCount = resultantTotalCount不会返回计数,而是返回作业的响应。在contentCount = resultantTotalCount中,您基本上将resulTotalCount的值分配给contentCount。

你应该使用

function moredbCount(contentMoreArray2, ArrHeading) { 
  var sampleArr = [];
  for (var a = 0; a < contentMoreArray2.length; a++) {
    if (ArrHeading !== 'More') {
      var fullHeading = ArrHeading + '-' + contentMoreArray2[a].name;
    } else {
      fullHeading = contentMoreArray2[a].name;
    }
    sampleArr.push(fullHeading);    
  }
  var sampleCount = sampleHeadingCount(sampleArr);
  return sampleCount.then(function (resultantCount) {
    return resultantCount;  //Here iam getting some count like 10 and     returning it to the function;  
  });
}
var contentCount; 
 var totalCount = moredbCount(contentMoreArray2, ArrHeading);
 totalCount.then(function (resultantTotalCount) {      
      return resultantTotalCount
});