gpt4 book ai didi

javascript - 即使变量包含数据,Google 脚本函数也会返回 null

转载 作者:太空宇宙 更新时间:2023-11-04 15:41:54 25 4
gpt4 key购买 nike

我尝试创建的程序有一个小问题。它应该计算出将一种能力提升到一定水平需要多少经验。我还没有走到这一步,因为我在计算成本函数末尾的返回时遇到了麻烦。我试图将一个字符串数组传递回名为CalculateCost 的函数,但是,这不起作用,所以我尝试将所有值连接到一个字符串中。这也行不通。我知道我尝试返回的变量不为空,因为我经常使用 ui.alert() 来检查变量的值。任何帮助将不胜感激。这是有问题的谷歌表格。 https://docs.google.com/spreadsheets/d/1Xo_uppFDI_C65EVi-TZ1iHTseK-Fg1izyCRkeTKaV9k/edit?usp=sharing存在问题的脚本称为能力价格计算器。

最佳答案

问题似乎是函数CalculateCost没有返回任何内容...

function CalculateCost(abilityValues,index,level) {
var ui = SpreadsheetApp.getUi();
var ss = SpreadsheetApp.getActive();
var sheet = ss.getActiveSheet();
ui.alert("CalculateCost");
FindRequirements(abilityValues,index,sheet,level);
// current function returns nothing!
}

/* You may have thought, "oh but CalculateCost() already does the return,
so there's no need". However, when we call a function that contains
a return, it's as though we just paste the value that it returns.
Plus, there was no command (alert, prompt, etc) at the end of your
non-return-function, which made no sense. It made no sense to Google
at least, so it was... undefined. */

所以我把它改为

function CalculateCost(abilityValues,index,level) {
var ui = SpreadsheetApp.getUi();
var ss = SpreadsheetApp.getActive();
var sheet = ss.getActiveSheet();
ui.alert("CalculateCost");
var reqs = FindRequirements(abilityValues,index,sheet,level); // notice the reqs var
return reqs; // this line was missing
}

此外,我在对代码进行故障排除时遇到了问题:我的主要问题是,当我们单击菜单中的CalculateCost 时,我们通常期望调用CalculateCost() 函数,但实际上我们调用了InputValues() 函数。当自定义功能未绑定(bind)到同一菜单项时,很容易迷失方向,因此也许您可以稍后更改它。

请告诉我我的回答是否对您的代码有帮助?

关于javascript - 即使变量包含数据,Google 脚本函数也会返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43810943/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com