2012-06-20 2 views
1

Простой вопрос -строка, которая была использована в ParseInt - получить значение строки обратно

Как преобразовать строку, которая была через ParseInt обратно в это значение строки?

var myInt = parseInt('J', 36); //19 
var myString = myInt.toString(); //returns "19" I would like it to return "J" 

Могу ли я сделать это с более длинными строками?

var myInt = parseInt("Jon o'reiley", 36); //25511 
+0

'toString (36)'? –

+1

Вы хотите что-то кодировать в base36? –

+1

'parseInt (« Jon o'reiley », 36) === parseInt (« Jon », 36)', потому что пробел не является допустимым символом в базе 36. –

ответ

10

При преобразовании строки в int информация о базе, используемая строка теряется. Также теряются любые данные, которые были проигнорированы при разборе.

Однако, как parseInttoString имеет базовый аргумент тоже:

myInt.toString(36); 

Demo из оболочки JS:

js> (19).toString(36) 
"j" 
js> parseInt('abc+foo', 36).toString(36) 
"abc" 
+0

Спасибо, очень полезно. – Finnnn

1

Вы не можете.

Как только объект был преобразован в целое число, любая другая информация будет потеряна.

Если вы хотите получить к нему доступ, вам нужно будет хранить J в отдельном объекте.

Смежные вопросы