ресурс для начинающих веб-разработчиков
комплексные веб-услуги по созданию сайтов

Справочный материал по основным языкам программирования и верстки сайтов.

Готовая методика создания простых и сложных динамичных сайтов, с использованием PHP и MySQL.

Использование веб-редактора Adobe Dreamweaver в разработке сайтов.

Использование графических редакторов Adobe Flash, Adobe Photoshop, Adobe Fireworks в подготовке веб-графики.

Разработка веб-сайтов под "ключ".

Разработка отдельных фрагментов сайтов, консультации по вопросам верстки веб-страниц и веб-программирования.

Специальные операторы

Специальные операторы

Побитовые операторы

Побитовые (порвзрядные) операторы применяются к целочисленным значениям и возвращают целочисленные значения. При их выполнении операнды предварительно приводятся к двоичной форме представления, в которой число является последовательностью из нулей и единиц длиной 32. Эти нули и единицы называются двоичными разрядами, или битами. Далее производится некоторое действие над битами, в результате которого получается новая последовательность битов. В конце концов эта последовательность битов преобразуется к обычному целому числу — результату побитового оператора.

Таблица. Побитовые операторы
Оператор Название Левый операнд Правый операнд
& Побитовое И Целое число Целое число
| Побитовое ИЛИ Целое число Целое число
^ Побитовое исключающее ИЛИ Целое число Целое число
~ Побитовое НЕ — (Нет) Целое число
<< Смещение влево Целое число Кол-во битов, на которое производится смещение
>> Смещение вправо Целое число Кол-во битов, на которое производится смещение
>>> Заполнение нулями при смещении вправо Целое число Кол-во битов, на которое производится смещение

Операторы &, |, ^, ~ – не логические операторы, их область действия – биты. Оператор ~ изменяет значение бита на противоположное: 0 на 1, а 1 на 0.

А так работают операторы &, |, ^.

X Y X&Y X|Y X^Y
1 1 1 1 0
1 0 0 1 1
0 1 0 1 1
0 0 0 0 0

Рассмотрим пример.

a=2&3 //результат 2
a1=2|3 /результат 3
a2=4<<5 //результат 128
a3=3>>>5 //результат 0
a4=5^7 //результат 2
a5=6>>2 //результат 1

Проверим.

document.write(a+"
"+a1+"
"+a2+"
"+a3+"
"+a4+"
"+a5)

В окне веб-браузера это будет выглядеть ТАК.

Объектные операторы

  • delete – оператор удаления свойств объекта. Используется для удаления элементов из массива. Синтаксис:
  • delete элемент

    При удалении элемента массива удаляется его индекс, но оставшие элементы сохраняют свой преждние индексы, при этом длина массива не меняется.

    Рассмотрим пример.

    planets=new Array("Меркурий", "Венера", "Земля", "Марс")
    a=planets.length
    delete planets[1]
    a1=planets.length
    delete planets[3]
    a2=planets.length

    Проверим.

    document.write(a1+"
    "+a2+"
    "+planets[0]+"
    "+ planets[1]+"
    "+ planets[2]+"
    "+ planets[3])

    В окне веб-браузера это будет выглядеть ТАК.

    Использование оператора delete не приводит к немедленному освобождению памяти. Решение об освобождении памяти принимается так называемым ядром JavaScript, а пользовательская программа лишь создает к этому предпосылки, но не может контролировать этот процесс абсолютно.

  • in – оператор проверки наличия свойств. Позволяет проверить имеется ли некоторые свойство или метод у того или иного объекта. Левый операнд представляет собой ссылку в виде строки на интересующее нас свойство или метод, а правый операнд — объект. Ссылка на метод содержит лишь его название без круглых скобок.
  • Если свойство или метод содержится в объекте, то возвращается true, иначе — false. Отсюда следует, что оператор in можно применять в условных выражениях (в операторах if, switch, for, while, do-while).

    Рассмотрим пример.

    Объект document, представляющий загруженный в браузер HTML- документ, имеет метод write. Чтобы убедиться в этом, следует написать выражение:

    "write" in document // значение равно true

    Проверим.

    document.write("write" in document )

    В окне веб-браузера это будет выглядеть ТАК.

    Создадим объект и проверим в нем наличие некоторых свойств.

    function car(name,model,color) {
    this.name=name //название
    this.model=model //модель
    this.color=color //цвет
    }
    acar=new car("Nissan", "Almera", "green")
    a="name" in acar //true
    a1="model" in acar //true
    a2="color" in acar //true
    a3="brec" in acar //false

    Проверим.

    document.write(a+"
    "+a1+"
    "+ a2+"
    "+ a3)

    В окне веб-браузера это будет выглядеть ТАК

  • instanceof – оператор проверки принадлежностии объекта модели.
  • Позволяет проверить, принадлежит ли некоторый объект объектной модели JavaScript. Левый операнд представляет проверяемое значение, а правый — ссылку на корневой объект, такой как Array, String, Date и т. п. Выражение с оператором instanceofвозвращает true или false и, таким образом, может использоваться в условных выражениях (в операторах if, switch, for, while, do-while).

    Рассмотрим пример.

    a=new Array(1,2,3)
    b=a instanceof Array //true
    b1=Array instanceof Object //true
    b2=Array instanceof String //false

    Проверим.

    document.write(b+"
    "+b1+"
    "+b2)

    В окне веб-браузера это будет выглядеть ТАК.