怎么用js导出excel文件

最近在解决一个问题的时候遇到一个这样的需求:

1)有两个存在关联的数学表达式,表达式1:计算得到h1

function outputH1(R, r, h) {
    var V = (Math.PI / 3) * (Math.pow(R, 2) + R * r + Math.pow(r, 2)) * h;
    var h1 = V / (Math.PI * Math.pow(r, 2));
    return h1;
  }

2) 表达式2 根据不同R,r,h的值得到不同h1后 代入公示2,计算得到C

//表达式1 的取值

// r,R,h2取值表
  var listNum = [
    {r: 0.4,R: 1,h2: 0.5},
    {r: 0.5,R: 1.2,h2: 0.6},
    {r: 0.6,R: 1.5,h2: 0.7},
    {r: 0.7,R: 1.75,h2: 0.8},
    {r: 0.8,R: 1.95,h2: 0.9},
    {r: 0.9,R: 2.2,h2: 1.0},
  ];

//公示2的取值

// L的取值表
  var numlist = [30, 35, 40, 45, 50, 55, 60];

计算:

/* 计算 得到h1  调用outputH1
    @param: R
    @param: r
    @param: h 对应的是h2
  */
  function outputH1(R, r, h) {
    var V = (Math.PI / 3) * (Math.pow(R, 2) + R * r + Math.pow(r, 2)) * h;
    var h1 = V / (Math.PI * Math.pow(r, 2));
    return h1;
  }
  // 遍历 L的值 分别计算C
  numlist.forEach(function (item, index) {
    var numlist = item;
    listNum.forEach(function (item, index) {
      // 得到每一个h1
      var h1 = outputH1(item.R, item.r, item.h2).toFixed(4);
      // 得到每一个C
      var C = (942 / (h1 + numlist)).toFixed(0);
      var outputlist = '<div>当r=' + item.r + ',R=' + item.R + ',h2=' + item.h2 + '以及L=' + numlist + '时,C = ' + C + '</div>';
      document.write(outputlist);
    })
  })

最后得到的结果是:github获取js源代码


假设有一个需求,我们需要把上述r,R,h2,L对应生成C值的一个excel,我们该怎么做呢?


就像上述的图片显示的表格一样。

未完待续...




猜你喜欢

转载自blog.csdn.net/weixin_37861326/article/details/80313174