如何将数据从多个函数 returns 传递到 js/jquery 中的单个变量

How to pass data from multiple function returns to single variable in js/jquery

我有一个函数,它获取段落高度,并通过减去 100vh - 段落高度来计算图像高度,每次加载图像时。

导致效果不理想,我想减去这个函数得到的最高值

所以我认为最好的方法是将数据从多个负载传递到单个变量,然后选择最高的一个。虽然我是 js 初学者,不知道该怎么做。如果我错了,请纠正我。

$(".module img").one("load", function () {
    
    var z = $(this).next('p').height()
    console.log(z)
    $('.module img').css({'height': 'calc(100vh - ' + z + 'px)'})

}).each(function() {
  if(this.complete) {
      //$(this).load(); // For jQuery < 3.0 
       $(this).trigger('load'); // For jQuery >= 3.0 
  }
});

像这样应该可以完成工作:

它只是将最大值存储在变量中并使用它

let maxHeight = 0;

$(".module img").one("load", function () {
    
    var z = $(this).next('p').height()

    if (z > maxHeight){
      maxHeight = z;
    }

    console.log(z)
    $('.module img').css({'height': 'calc(100vh - ' + maxHeight + 'px)'})

}).each(function() {
  if(this.complete) {
      //$(this).load(); // For jQuery < 3.0 
       $(this).trigger('load'); // For jQuery >= 3.0 
  }
});