2016-05-17 600 views
18

我試圖將req.params轉換爲數字,因爲這是我在我的模式中定義的年份參數。將字符串轉換爲數字node.js

我已經試過

req.params.year = parseInt(req.params.year, 10); 

Number(req.params.year); 

1*req.params.year; 

,但他們的工作不。 我需要安裝一些東西嗎?

+0

對不起,我沒有看到你發佈的代碼的其餘部分。然後嘗試parseInt(req.params.year.replace(/ [^ 0-9]/g,''),10) –

+0

但我確實嘗試過... – user3488862

+0

[javascript問題] parseInt() ](http://stackoverflow.com/questions/7318385/problems-with-javascript-parseint) –

回答

42

您不必安裝任何東西。

應該正常工作。

console.log(typeof parseInt(req.params.year)); // returns 'number' 

如果使用parseInt,那麼輸出是什麼?它仍然是一個字符串?

+0

是的,當我這樣做,我的輸出仍然是一個字符串:/很奇怪! – user3488862

+4

我認爲你使用的是正確的?我從來沒有使用過這個軟件包,但是它可以,params只是只讀的?什麼,如果你創建一個自己的變量? 'var p = parseInt(req.params.year);' – Tusk

+0

Thanks that helps !!!! – user3488862