2

我已经通过代码学院完成了最低限度的JavaScript编码。我还帮助在家族企业中构建电子表格,并且我们正在制作2017年的新电子表格(后期!!),并增加了一些功能,这些功能使表格中的函数调用非常笨重。现在尝试使用非常简单的自定义函数,以便处理几个我需要使用的函数。遇到问题时,请删除第一个脚本,除了问题区域以外的所有内容。匹配字符串

佣金(平台,金额)分别取名和数量。基于这些价值观,我将设立佣金公式。发现与名称匹配的问题。删除所有但问题区域后,所有我拥有的是:

function commission(platform, amount) { 

    return platform=="AB"; 

}; 

它是从电子表格运行为:

(从小区E4调用)=commission(c4,d4)

返回的值是FALSE。

C4包含文本AB
D4(现在不相关的)含有1000

的问题if(platform == "AB") {.......

出现的功能没有被评估的条件为真。当我重写它以返回平台的值时,它确实在调用函数的单元格e4中返回“AB”。

因此,该变量显然确实读取(并告知返回时)c4的正确内容,但无法在条件语句中识别此值。

我看到JavaScript中的条件语句使用=====。不知道是否有任何区别,都尝试过。试过单引号和双引号。

张贴在良好的床单论坛,要求我交叉帖子。

+0

你试过console.logging输出?每隔一段时间,特别是电子表格中,c4列中可能会有额外的空间或其他内容,可能会造成混乱。否则,我想我需要查看电子表格的这一部分,以及如何将信息传递给函数,以及函数的其余部分。 –

+0

'==='会进行更严格的平等比较,正如MDN文档中所述:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators –

回答

1

可能有意/无关,但我注意到你的代码中有一个额外的`。溶液

function commission(platform, amount) { 
if(platform == "AB"){ 
    return amount; 
} 
else 
{ 
    return 0; /// insert your own return 
} 
}; 

谷歌电子表格截图

enter image description here

+0

我认为它是无关紧要的,因为这里使用严格重音来应用代码格式,所以我将其从问题中删除。 –