Google脚本 - 开关语句不使用范围

发布于 2025-01-24 09:19:31 字数 699 浏览 0 评论 0原文

我正在研究一个简单的功能,该功能应该返回传递范围内的特定元素的数量。我想使用Switch语句,但是由于某种原因,它无法正常工作:

function groupResult(range) {
  const resultsQuantity = {
    na: 0,
    fail: 0,
    pass: 0,
    empty: 0
  }
  for(let i of range) {
    switch(i){
      case 'N/A':
        resultsQuantity.na++;
        break;
      case "FAIL":
        resultsQuantity.fail++;
        break;
      case "PASS":
        resultsQuantity.pass++;
        break;
      default:
        resultsQuantity.empty++
    }
  }
  return resultsQuantity.na;
}

电子表格中的功能调用如下: 函数在电子表格中的呼叫

因此我得到了“ 0”,而不是预期的“ 0”,而不是预期的” 2 “

I'm working on a simple function that should return the quantity of specific elements in a passed range. I would like to use SWITCH statement but for some reason it doesn't work as I would expect:

function groupResult(range) {
  const resultsQuantity = {
    na: 0,
    fail: 0,
    pass: 0,
    empty: 0
  }
  for(let i of range) {
    switch(i){
      case 'N/A':
        resultsQuantity.na++;
        break;
      case "FAIL":
        resultsQuantity.fail++;
        break;
      case "PASS":
        resultsQuantity.pass++;
        break;
      default:
        resultsQuantity.empty++
    }
  }
  return resultsQuantity.na;
}

the function call in the spreadsheet looks like follows:
call of the function in the spreadsheet

but as result I get "0" instead of expected "2"

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

脸赞 2025-01-31 09:19:31

使用

for(let i of range.flat())

是因为范围是2D数组。

Use

for(let i of range.flat())

Because the range is a 2d array.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文