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

我認爲它是無關緊要的,因爲這裏使用嚴格重音來應用代碼格式,所以我將其從問題中刪除。 –