Далее на странице...
Для перебора и вывода на экран всех свойств объекта используется конструкция for...in. Синтаксически она отличается от цикла for, с которым мы знакомились ранее.
Перебор всех свойств объекта - Конструкция for...in - СИНТАКСИС
Рассмотрим синтаксис конструкции for...in, которую также называют цикл по свойствам.
// Создание объекта и указание его свойств
var object = {
property_1: value_1,
property_2: value_2
}
// Создание произвольной переменной. И далее цикл по свойствам: поочередное занесение в переменную всех свойств объекта. Вывод переменной на экран...
var from;
for (from in object)
{
document.write(from);
}
object - имя объекта
property_1 и property_2 - свойства объекта
value_1 и value_2 - значения свойств
from - произвольная переменная
for (from in object) - цикл по свойствам for...in, который каждое свойство объекта object поочередно заносит в переменную from.
Далее рассмотрим пример, в котором будем работать с объектом auto из предыдущей заметки.
<script type="text/javascript">
/* Создание объекта auto */
var auto = {
brand: "Hyundai",
year: 2010,
color: "Мокрый асфальт"
}
var from_Object; /* Произвольная переменная */
/* Цикл по свойствам */
for(from_Object in auto)
{
document.write(from_Object + " : " + auto[from_Object] + "<br />");
}
</script>
brand : Hyundai
year : 2010
color : Мокрый асфальт
Итак, в этом примере при помощи конструкции for...in каждое свойство объекта auto было поочередно занесено в переменную from_Object.
Затем выведены на экран: названия свойств объекта auto и их значения.
Именно здесь работает только второй способ обращения к свойствам объекта:
auto[from_Object] - обращаемся к свойствам объекта auto через переменную from_Object, используя синтаксис: квадратные скобки.
Об этом шла речь в предыдущей заметке.
Список свойств объекта document
В примере выше выводились на экран свойства объекта auto, которого в javascript не существует. Он создавался нами.
Попробуем вывести на экран все свойства существующего в языке JavaScript объекта document.
<script type="text/javascript">
var any; /* Произвольная переменная */
/* Цикл по свойствам для объекта document */
for(any in document)
{
document.write(any + "<br />");
}
</script>
Перечень свойств объекта document
location
getElementsByName
open
close
write
.
.
.
.
dispatchEvent