Свойства объектов JavaScript
Свойства — самая важная часть любого объекта JavaScript.
Свойства — это значения, ассоциированные с объектом JavaScript. По сути объект JavaScript это набор неупорядоченных свойств.
Обычно свойства можно изменять, добавлять и удалять. Но могут быть и свойства, которые можно только прочитать.
Доступ к свойствам объекта JavaScript
Получить доступ к свойству объекта можно следующим образом:
имяОбъекта.свойство // person.age
или
имяОбъекта[«свойство«] // person[«age»]
или
имяОбъекта[выражение] // x = «age»; person[x]
Внимание! Если для доступа к свойству используется выражение, то его результат должен давать имя свойства.
Пример №1
person.firstname + " было " + person.age + " лет.";
Пример №2
person["firstname"] + " было " + person["age"] + " лет.";
Цикл for…in
Выражение for…in
Синтаксис:
for (переменная in объект) {
выполняемый код
}
Блок кода внутри цикла for…in выполняется один раз для каждого свойства объекта.
Пример прохода по всем свойствам объекта:
var person = {fname:"Иван", lname:"Петров", age:25};
for (x in person) {
txt += person[x];
}
Добавление новых свойств
Чтобы добавить новое свойство существующему объекту, нужно просто присвоить ему значение.
Предположим, что объект person уже существует. Вы можете добавить ему новое свойство:
person.nationality = "English";
Удаление свойств
Ключевое слово delete удаляет свойство из объекта:
var person = {firstName:"Иван", lastName:"Петров", age:50, eyeColor:"карие"};
delete person.age; // или delete person["age"];
Ключевое слово delete удаляет как значение свойства, так и само свойство.
После удаления свойство не может быть использовано до тех пор, пока не будет добавлено вновь.
Оператор delete используется только со свойствами объектов. Он не работает с переменными или функциями.
Не следует использовать оператор delete с предопределенными свойствами объектов JavaScript. Это может нарушить работу вашего приложения.
Атрибуты (метаданные) свойств
У всех свойств есть имя. Кроме этого, у них также есть значение.
При этом каждое свойство имеет следующие атрибуты или метаданные:
- value — содержит непосредственно данные
- enumerable — определяет доступность свойства для перечисления
- configurable — определяет доступность свойства для изменения (например, может ли свойство быть удалено, может ли быть изменен какой-либо атрибут свойства)
- writable — определяет, доступно ли данное свойство для записи (по умолчанию, true)
Эти атрибуты определяют доступность свойства (можно ли его прочитать?, его можно изменить?)
В JavaScript все атрибуты можно прочитать, но изменить можно только атрибут value (и только в том случае, если свойство изменяемо).
В ECMAScript 5 есть методы для чтения и записи всех атрибутов свойства.
Свойства прототипа
Объекты JavaScript наследуют свойства своих прототипов.
Оператор delete не удаляет наследованные свойства, но если вы удалите свойство в прототипе, то это повлияет на все объекты, которые наследуют от этого прототипа.
msiter.ru
JavaScript | Объекты
1000 руб скидки на курс по C# Toggle navigation Professor Web- C# 5.0 и .NET 4.5
- Руководство C# — Часть 1
- Руководство C# — Часть 2
- Основы .NET
- Сборки .NET
- Потоки и файлы
- Работа с сетью
- Оптимизация приложений
- WPF
- Основа WPF
- Элементы управления WPF
- Привязка и стили
- Графика и анимация
- Шаблоны WPF
- Периферия WPF
- Темы WPF
- Dark Blue UI
- Dark Orange UI
- Silverlight 5
- Работа с БД
- ADO.NET
- Entity Framework 6
- SQL Server 2012
- Оконные функции
- LINQ
- LINQ to Objects
- LINQ to XML
- LINQ to DataSet и SQL
- LINQ to Entities
- Parallel LINQ
- ASP.NET
- Веб-сайты
- Безопасность
- Интернет магазин
- ASP.NET Web Forms 4.5
- ASP.NET MVC 5
- Аутентификация
- Windows 8/10
- WinRT — основы
- WinRT — расширения
- Программы
- Expression Blend 4
- Visual Studio
professorweb.ru
объекты — Как правильно создать объект в объекте и создать для него свойства ? [JavaScript]
Stack Overflow на русскомLoading…
- 0
- +0
- Тур Начните с этой страницы, чтобы быстро ознакомиться с сайтом
- Справка Подробные ответы на любые возможные вопросы
- Мета Обсудить принципы работы и политику сайта
- О нас Узнать больше о компании Stack Overflow
Бизнес Узнать больше о поиске разработчиков или рекламе на сайте