Javascript.RU

toString

Синтаксис

object.toString()

Описание, примеры

Каждый объект обладает методом toString, который вызывается автоматически каждый раз, когда требуется строковое представление объекта.

Например, это произойдет в вызовах:

// alert требует строку,
// поэтому произойдет неявный вызов obj.toString
alert(obj) 

// операция объединения строк сделает строку из obj
var s = 'Объект в виде строки:'+obj

Объект Object предоставляет базовый метод toString, который обычно перекрывается наследующими от Object объектами.

По умолчанию, если этот метод не перекрыт объектом-наследником Object - он возвращает "[object <тип объекта>]".

var o = new Object();
alert(o.toString())  // [object Object]

Каждый основной объект яваскрипт обладает своим собственным методом toString, например:

var d = new Date()
alert(d) // выведет d.toString()

Полезной практикой является перекрытие toString для новых типов объектов. Метод toString не получает аргументов и возвращает строку. Как правило, эта строка содержит основную информацию об объекте.

Пример: До перекрытия метода toString
function Dog(name,color) {
   this.name=name
   this.color=color
}

theDog = new Dog("Барбос","черный");

Если вызвать метод toString сейчас, то он вернет [object Object].

Для изменения этого поведения добавим в прототип свой метод toString:

Пример: После перекрытия метода toString
Dog.prototype.toString = function() {
  return "Собака " + this.name + ", цвет:" + this.color
}

theDog = new Dog("Барбос","черный");

alert(theDog) // => "Собака Барбос, цвет: черный"

Каждый раз, когда объект theDog будет использован в качестве строки, яваскрипт автоматически вызовет метод toString, который вернет "Собака Барбос, цвет: черный".


Автор: yesnik, дата: 7 апреля, 2013 - 12:06
#permalink

Также стоит упомянуть, что эта функция позволяет пребразовать число к различным системам счисления:
number.toString( [radix] ),
где radix - целое число от 2 до 36, обозначающее систему счисления для чисел

var a = 9;
a.toString(16); // '9'
var b = 10;
b.toString(16); // 'a'
var с = 2;
с.toString(2); // '10'

Автор: Гость (не зарегистрирован), дата: 11 мая, 2017 - 17:04
#permalink

В последнем коде ошибка.
Строка 2:

var a = 9;
a.toString(16); // '9'

// Должно быть 

a.toString(10);

Автор: Гость (не зарегистрирован), дата: 28 июля, 2017 - 01:42
#permalink

Ошибок нет, т.к. число 9 будет записываться так в любой системе счисления с основанием 10 и выше.

var a = 9;
a.toString(2);  // '1001'
a.toString(6);  // '13'
a.toString(9);  // '10'
a.toString(10); // '9'
a.toString(16); // '9'
a.toString(20); // '9'

Автор: Гость (не зарегистрирован), дата: 25 февраля, 2019 - 18:36
#permalink

Супер!


Автор: Гость (не зарегистрирован), дата: 12 апреля, 2022 - 15:09
#permalink

Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
5 + 6 =
Введите результат. Например, для 1+3, введите 4.
 
Поиск по сайту
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние комментарии
Последние темы на форуме
Forum