| Исходный тип | 
Результат | 
| Undefined | 
"undefined" | 
| Null | 
"null" | 
| Boolean | 
"true", если аргумент равен true, и "false", если аргумент равен false | 
| Number | 
текстовое представление числа (см. ниже) | 
| String | 
без изменений | 
| Object | 
результат преобразования значения объекта по умолчанию | 
Преобразование числа 
n в строку происходит по следующим правилам:
	- если n равно NaN, то результат "NaN";
 
	- если n равно +0 или -0, то результат "0";
 
	- если n отрицательно, то результат будет конкатенацией строки "-" и результата преобразования в строку числа -n;
 
	- если n равно бесконечности, то результат "Infinity";
 
	- в остальных случаях пусть m, k и s — такие целые числа, что k >= 1, 10k-1 <= s < 10k, n равно s x 10m-k и k — наименьшее из возможных. Отметим, что k — это количество цифр в десятичном представлении s, что s не делится на 10 и что наименее значимая цифра s может не быть однозначно определенной. Тогда
 
	- если k <= m <= 21, то результат состоит из k десятичных цифр s (без ведущих нулей), за которыми следуют m-k символов '0';
 
	- иначе, если 0 < m <= 21, то результат состоит из m старших десятичных цифр s, за которыми следуют десятичная точка '.' и k-m оставшихся десятичных цифр s;
 
	- иначе, если -6 < m <= 0, то результат состоит из символа '0', за которым следуют десятичная точка '.', -m символов '0' и k десятичных цифр s;
 
	- иначе, если k = 1, то результат состоит из единственной цифры s, символа 'e', символа плюс '+' или минус '-' в зависимости от того, положительно или отрицательно m-1, за которыми следует десятичное представление числа abs(m-1);
 
	- иначе результат состоит из старшей десятичной цифры s, за которой следуют десятичная точка '.' и k-1 оставшихся десятичных цифр s, символ 'e', символ плюс '+' или минус '-' в зависимости от того, положительно или отрицательно m-1, за которыми следует десятичное представление числа abs(m-1).