2017-05-06 82 views
1

對於一個賦值,我試圖重新創建一個我曾經在ASP.NET中創建過的小項目。如何將非數字字符串轉換爲int

它將文本的每個字母轉換爲它的int值,然後加1,然後將其重新轉換爲char並將它們全部放回到單個字符串中。

現在我正在嘗試在Angular中執行此操作,但我無法將我的非數字字符串轉換爲其值int值。

我試過ParseInt(),但是這似乎只適用於字符串是有效整數。

有什麼辦法解析或轉換非數字字符串爲int值,以及如何?

+0

看這裏string值:上字母parseInt函數(http://stackoverflow.com/questions/ 9429113/is-parseint-supposed-to-work-like-this) –

+1

好像你必須做同樣的事情,你已經在你的ASP.NET程序中完成了;將你的字符串分解成一個'char'數組,然後遍歷數組並在每個字母上使用'char.charCodeAt()'。 – Claies

+0

@Claies在ASP.NET中,我只是在for循環中執行'(int)stringmsg [i]',但charCodeAt讓我處於正確的軌道,所以謝謝。 – Vahx

回答

1

Thankx對ClaiesDamien Czapiewski有幫助的見解我構建了以下解決方案。

循環瀏覽我的string中的每個字符for loop
然後,對每個char我檢索到它的價值與charCodeAt()
並返回到我以前fromCharCode()

encode(msg:string):string { 

    let result: string = ""; 

    if (msg) { 
     for (var i = 0; i < msg.length; i++) { 

      let msgToInt = msg.charCodeAt(i); 

      // do stuff here 

      result += String.fromCharCode(msgToInt); 
     } 
    } 

    return result; 
} 
4
'String here'.split('').map(function (char) { 
    return String.fromCharCode(char.charCodeAt(0) + 1); 
}).join(''); 

如果你的意思是char代碼。

+0

這可能對Javascript好,但我正在尋找一個Angular/Typescript語法解決方案。也許javascript標籤應該從問題中刪除..但這和@Claies評論幫助了我 – Vahx