Чтение онлайн

на главную

Жанры

JavaScript. Подробное руководство, 6-е издание
Шрифт:

Имейте в виду, что

Object.seal
не делает свойства объекта доступными только для чтения; используйте для этого функцию
Object.freeze.
Отметьте также, что
Object.seal
не воздействует на унаследованные свойства. Если в цепочке прототипов объекта, обработанного функцией
Object.seal,
имеется расширяемый и настраиваемый объект, тогда имеется возможность добавлять и удалять наследуемые им свойства.

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

См. также

Object.defineProperty, Object.freeze, Object.isSealed, Object.preventExtensions, раздел 6.8.3

Object.toLocaleString

возвращает локализованное строковое представление объекта

Синтаксис

объект.toLocaleString

Возвращаемое значение

Строковое представление объекта.

Описание

Этот метод предназначен для получения строкового представления объекта, локализованного в соответствии с текущими региональными настройками. Метод

toLocaleString,
предоставляемый по умолчанию классом
Object
, просто вызывает метод
toString
и возвращает полученную от него нелокализованную строку. Однако обратите внимание, что другие классы, в том числе
Array
,
Date
и
Number
, определяют собственные версии этого метода для локализованного преобразования в строку. Вы также можете переопределить этот метод собственными классами.

См. также

Array.toLocaleString, Date.toLocaleString, Number.toLocaleString, Object.toString

Object.toString

возвращает строковое представление объекта

Синтаксис

объект.toString

Возвращаемое значение

Строка, представляющая объект.

Описание

Метод

toString
относится к тем, которые обычно не вызываются явно в JavaScript-программах. Программист определяет этот метод в своих объектах, а система вызывает метод, когда требуется преобразовать объект в строку.

JavaScript вызывает метод

toString
для преобразования объекта в строку всякий раз, когда объект используется в строковом контексте. Например, если объект преобразуется в строку при передаче в функцию, требующую строкового аргумента:

alert(my_object);

Подобным же образом объекты преобразуются в строки, когда они конкатенируются со строками с помощью оператора +:

var msg = 'Мой объект: ' + my_object;

Метод

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

Определяя в JavaScript специальный класс, целесообразно определить для него метод

toString.
Если этого не сделать, объект наследует метод toString, определенный по умолчанию в классе
Object
. Этот стандартный метод возвращает строку в формате:

[objectкласс]

где класс - это класс объекта: значение, такое как «Object», «String», «Number», «Function», «Window», «Document» и т.д. Такое поведение стандартного метода

toString
иногда бывает полезно для определения типа или класса неизвестного объекта. Однако большинство объектов имеют собственную версию
toString,
поэтому для произвольного объекта о необходимо явно вызывать метод
Object.toString,
как показано ниже:

Object.prototype.toString.apply(o);

Обратите внимание, что этот способ идентификации неизвестных объектов годится только для встроенных объектов. Если вы определяете собственный класс объектов, то класс для него будет соответствовать значению «Object». В этом случае дополнительную информацию об объекте позволит получить свойство

Object.constructor
. Метод
toString
может быть очень полезен при отладке JavaScript-программ - он позволяет выводить объекты и видеть их значения. По одной только этой причине есть смысл определять метод
toString
для каждого создаваемого вами класса.

Несмотря на то что метод

toString
обычно вызывается системой автоматически, бывают случаи, когда его требуется вызвать явно. Например, чтобы выполнить явное преобразование объекта в строку, если JavaScript не делает это автоматически:

у = Math.sqrt(x); // Вычислить число

ystr = у.toString; // Преобразовать его в строку

Относительно этого примера следует помнить, что числа имеют встроенный метод

toString,
обеспечивающий принудительное преобразование.

В других случаях вызов

toString
может оказаться полезным - даже в таком контексте, когда JavaScript выполняет преобразование автоматически. Явное использование метода
toString
может сделать программный код более понятным:

alert(my_obj. toString);

См. также

Object.constructor), Object.toLocaleString, Object.valueOf

Object.valueOf
Поделиться:
Популярные книги

Древесный маг Орловского княжества 2

Павлов Игорь Васильевич
2. Орловское княжество
Фантастика:
аниме
сказочная фантастика
фэнтези
попаданцы
5.00
рейтинг книги
Древесный маг Орловского княжества 2

Матабар

Клеванский Кирилл Сергеевич
1. Матабар
Фантастика:
фэнтези
5.00
рейтинг книги
Матабар

Товарищ "Чума"

lanpirot
1. Товарищ "Чума"
Фантастика:
попаданцы
альтернативная история
4.00
рейтинг книги
Товарищ Чума

Контрольный поцелуй

Донцова Дарья
8. Любительница частного сыска Даша Васильева
Детективы:
иронические детективы
9.15
рейтинг книги
Контрольный поцелуй

Кодекс Охотника. Книга XXXII

Винокуров Юрий
32. Кодекс Охотника
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга XXXII

На границе империй. Том 10. Часть 3

INDIGO
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 3

Вторая жизнь майора. Цикл

Сухинин Владимир Александрович
Вторая жизнь майора
Фантастика:
героическая фантастика
боевая фантастика
попаданцы
5.00
рейтинг книги
Вторая жизнь майора. Цикл

Чужак из ниоткуда 2

Евтушенко Алексей Анатольевич
2. Чужак из ниоткуда
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Чужак из ниоткуда 2

Наследник для дона мафии

Тоцка Тала
2. Наследники мафии
Любовные романы:
остросюжетные любовные романы
эро литература
5.00
рейтинг книги
Наследник для дона мафии

Хроники Тириса. Книга 3

Маханенко Василий Михайлович
3. Хроники Тириса
Фантастика:
боевая фантастика
космическая фантастика
фантастика: прочее
5.00
рейтинг книги
Хроники Тириса. Книга 3

Воронцов. Перезагрузка. Книга 2

Тарасов Ник
2. Воронцов. Перезагрузка
Фантастика:
попаданцы
альтернативная история
фэнтези
5.00
рейтинг книги
Воронцов. Перезагрузка. Книга 2

Кодекс Крови. Книга IХ

Борзых М.
9. РОС: Кодекс Крови
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Крови. Книга IХ

Эпоха Опустошителя. Том IX

Павлов Вел
9. Вечное Ристалище
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Эпоха Опустошителя. Том IX

Гнев Пламенных

Дмитриева Ольга Олеговна
5. Пламенная
Фантастика:
фэнтези
4.80
рейтинг книги
Гнев Пламенных