object javascript

Объекты JavaScript

Объект — это некая сложная сущность, которая внутри себя объединяет сразу несколько переменных и функций. Т.е. объект внутри себя заключает данные и функции, которые будут обрабатывать эти же данные.

Свойство объекта — это переменные внутри него. Можно создать сколько угодно свойств.

Методы объекта — это функции, описанные внутри данного объекта. Эти функции действуют только на этот объект.

Объект в JavaScript создается с помощью оператора New. Создание свойства объекта — называется операцией ‘разименования’.

var myCar = new Lada(); //создали объект класса
myCar.name = "Granta"; //создали свойство
myCar.price = 300000; //еще свойство
myCar.skorost = 200;

Методы объекта создаются аналогчным образом. При вызове метода любого объекта в коде сначала пишется имя объекта, точка, имя метода с параметрами (можно без них):

myCar.show();

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

myCar=null;

Вообще, современные браузеры автоматически уничтожают объекты, которые не используются. Но это касается только локальных объектов. Кроме того, часто возникают ошибки при уничтожении объекта, он не до конца удаляется из памяти, и возникает проблема утечки памяти в браузере (часто в IE).

В JavaScript типы данных тоже являются объектами (num, string, array, boolean и др):

var a= 12;
var a = newNum(12);//то же самое

Метод toString

Это метод преобразует данные в строку:

var boolData = new Boolean(true);
alert(boolData.toString());

Т.е. здесь alert сам по себе умеет выводить только строку. И данные, которые он получает, он пытается преобразовать (не сам, а с помощью метода toString) в строку. В большинстве случаев метод toString вызывается скрытно, его не нужно отдельно вызывать в коде.

Объект Number

У этого объекта есть ряд констант:

  • Number.Nan.
  • Number.MAX_VALUE — максимальное число.
  • Numver.MIN_VALUE — минимальное число.
  • Number.POSITIVE_INFINITY — плюс бесконечность.
  • Number.NEGATIVE_INFINITY — минус бесконечность.

Объект String

Строки также являются объектами. Есть два варианта создания строки — короткий и длинный через new:

var s="This is a string"; //короткий путь
var s=new String("Thisis a string");//создаем как объект

Над типом данных string в javaScript определен только 1 оператор — конкатенации (+). Но для работы со строками есть много методов: вырезать из строки кусок, найти что-то в строке, вырезать правую-левую часть, вытащить символ по порядковому номеру. И все эти методы сделаны как методы объекта String. Но т.к. все строки являются объектами, то все эти методы актуальны для любой строки.

У объекта string есть свойство length (считает число символов в строке). Простой пример:

var str = new String ("Это строка");
document.writeIn(str);
document.writeIn("Длина строки:" + str.length);

Методов у объекта string много. Наиболее известные из них:

  • bold — жирный шрифт.
  • fontcolor — цвет шрифта.
  • fontsize — размер шрифта.
  • small — маленькие буквы.
  • sub — нижний индекс.
  • sup — верхний индекс.
  • fromCharCode — получение символа по коду (у каждого символа есть свой код согласно выбранной кодировки).
  • indexOf — находит вхождение подстроки в данную строку, возвращает индекс символа, с которого начинается вхождение.
  • lastIndexOf — находит вхождение подстроки в данную строку, но начинает поиск с конца строки. Возвращает индекс, с которого начинается вхождение.
  • italic — курсив.
  • link.
  • replace — замена одной подстроки на другую подстроку, точнее, первое вхождение одной подстроки на другую указанную подстроку.
  • substr, substring — возвращает часть строки, вырезает подстроку.
  • charAt — извлекает символ по его порядковому номеру (символы в строке нумеруются с нуля).
  • concat — сложение строк.
  • split — делит строку на части по определенному символу, возвращает массив строк.
  • toLowerCase — строка запишется маленькими буквами.
  • toUpperCase — строка запишется большими буквами.

Все эти методы данную строку string никак не меняют, они создают новую строку.




Добавить комментарий

Ваш e-mail не будет опубликован.