我從工作表中拉出數字並將它們與用戶通過html進行選擇進行比較。不過,即使Google表格中的數字都是整數類型數字,例如1001,1002等,Logger.log中的數字顯示爲浮點數。當試圖將數字與用戶輸入進行比較時,總是會出現錯誤,將float(從表單)與int(來自用戶)進行比較。將float轉換爲int不起作用
我試着將返回的浮點數轉換爲int使用parsteInt,Math.floor和一輪。它似乎並沒有轉換變量。我應該使用另一種方法嗎?
我從工作表中拉出數字並將它們與用戶通過html進行選擇進行比較。不過,即使Google表格中的數字都是整數類型數字,例如1001,1002等,Logger.log中的數字顯示爲浮點數。當試圖將數字與用戶輸入進行比較時,總是會出現錯誤,將float(從表單)與int(來自用戶)進行比較。將float轉換爲int不起作用
我試着將返回的浮點數轉換爲int使用parsteInt,Math.floor和一輪。它似乎並沒有轉換變量。我應該使用另一種方法嗎?
我得到這樣的問題,並使用2個解決方法: 對於腳本,我必須在屬性中存儲一個值,但是當我調用屬性時,它是一個文本而不是數字,雙數對我的計算來說不是問題。所以,我做的:
var prop = PropertiesService.getUserProperties();
var number = parseInt(prop.getProperty('PROPERTY_NAME'));
//do some stuffs after
佛另一個腳本,我不得不更髒一點,因爲從屬性我得到例如「8.0」改爲「8」。所以我這樣做:
var prop = PropertiesService.getUserProperties();
var value = prop.getProperty('PROPERTY_NAME');
var number = number.split(".")[0];
最後它的工作。
斯特凡
我相信'number.split ...'在這個例子中應該是'value.split ...' – trevordmiller
JavaScript沒有整數或浮...只是數字。所以3.0和3是相等的,如果它們是數字的話。
很可能您的用戶輸入是字符串,而不是數字。您需要將字符串強制轉換爲數字。
if (+userInput === 3) { etc.
在其他問題中有lots more examples這個。
它適合我。你可以請你分享你的代碼並輸出你想要做的事情嗎? – pointNclick