понедельник, 13 июня 2011 г.

Краткие основы JavaScript

Что такое?

JavaScript - объектно-ориентированый скриптовой язык программирования, в первую очередь предназначенный для создание интерактивный (т.е. изменяющихся без перезагрузки) web-страниц, но также его можно использовать в qt для организации интерактивной программы.

Типы данных и переменные

Основные типы данных в javascript:
  • string - строка, какая-либо последовательность символов
  • number - число (2, 4, 1e10, 3,14 и т.д.)
  • bool - логический тип данных, может принимать два значение: true  or false
  • object - объект
  • function - функция
  • undefined - тип данных не определен
JavaScript - язык со свободными типами данных, т.е. можно проводить операции с различными типами данных (складывать число и строку и т.д.)
Переменные.
Переменная в javascript начинается с буквы, знака доллара или подчеркивания и может содержать только буквы, знак доллара, подчеркивание и цифры. Регистр, в котором написана переменная важен (a и A - разные переменные)
Создаются переменые очень просто:
  • имя = значение  - создается переменная, содержащая значение (в JS оператор = является оператором присвоения, для сравнения используется оператор ==)
  • var имя - создается пустая переменная
  • var name=value - создается переменная с заданным значением

Приведение типов

Для проведения некоторых операция требуется преобразование одного типа данных в другой. Для этого существуют специальные функции:
  • Number(выражение\переменная) - преобразование в число, возвращает либо число, либо NaN (не число). Для логических величин возвращает 1 если true и 0 если false. Для строк пытается привести к числу (возможно преобразование в число таких строк, как "12312", "3,14" и т.д., при передачи в качестве параметра строки типа "7 дней" вернет NaN
  • parseInt(string[, base]) - пытается вернуть целое число, записаное в строке. Если указан необязательный параметр base, то считает число по основанию, указаному в base (8,16, по умолчанию - 10, указывать не обязательно)
  • parseFloat (string) - пытается преобразовать строку в вещественное число
  • String (выражение\переменная) - преобразует данные в строковой формат. Для логических данных возвращает true or false, для undefined - пустую строку ("")
  • Boolean(данные) - приводит данные к логическому типу. 0 возращается, если данные - пустая строка или 0, а в остальных случаех возращает true
  • Array(1[,2[,3...]]) - возращает массив, состоящих из переданных команде элементов
Примечание: запись func(a1[,a2[,a3..]]) означает, что в [ ] находятся необязательные параметры, которые можно опустить. Т.е. если написано s(a[,b]), то можно писать и s(a) и s(a,b)

Арифметические операторы

  • + - сложение (для строк - конкатенация (склейка) строк)
  • - - вычитание
  • * - умножение
  • / - деление
  • % - остаток от деление ( a mod b)
  • ++ - увеличение на 1
  • -- - уменьшение на 1
  • += a - увеличение на a
  • -=a - уменьшение на a
  • *=a - умножение на a
  • /=a - деление на a
  • %=a - остаток от деление на a

Математика

Функции
Math.функция
  • abs(number) - модуль числа
  • acos(number) - арккосинус
  • asin(number) - арксинус
  • atan (number) - арктангенс числа
  • cos (number) - косинус числа
  • sin(number) - синус числа
  • tan(number) - тангенс числа
  • exp(number) - enumber
  • floor(number) - округление вниз
  • ceil(number) - округление числа вврех
  • round(a) - округление до ближайшего целого
  • log(number) - натуральный логарифм (логарифм а по основанию b находится так: logba=lna/lnb
  • min(a,b),max(a,b) - минимальное или максимальное из двух чисел
  • pow(a,b) - a в степени b
  • sqrt(a) - квадратный корень из a
  • random() - случайное вещественное число в промежутке от 0 до 1
Константы
Math.константа
  • E - постоянная Эйлера
  • PI - число пи
  • SQRT1_2 - sqrt(0,5)
  • SORT - sqrt(2)

Логические операторы и операторы сравнения

  • == - равно
  • != не равно
  • > - больше
  • >= - больше либо равно
  • < - меньше
  • <= меньше либо равно
  • ! - отрицание
  • && - и
  • || - или

Условные операторы

if  (условие) {code{ - если условие истино, то выполняется код в { }
if (условие)
{ code }
else
{code 2}
Если усовие истино, то выполняется code, иначе code 2
switch (выражение)
{
case value1:
код;
break;
case value2:
код2;
break;
default:
код
}
В зависимости от значение выполяется различные код, если ни одно значение не совпадает выполняется код, описанный в default
условие ? код 1 : код 2 - если условие истино, выполняется код 1, иначе код 2

Операторы цикла

for (инициализация, условие, изменение) {code} - цикл выполняется до тех пор, пока условие истино. Например for (i=0;i<13;i++) {a+=a}
while (условие) {код} - пока условие истино выполняем код
do { код } while (условие) - аналогично предыдущему, только сначала выполнится код, а потом проверится условие

Функции

Cоздание фукнции в Java Script:
function name(parametr1[,parametr2...)
{
code
}
Вызов
name(параметры);

Строки

Специальные функции для работы со строками:
escape(string) - возвращает escape-последовательность стоки
unescape(string) - обратная операция
eval - вычисляет значение выражения, записанного в строку. Например, eval("2+5") вернет 7
Свойства и методы объекта String:
Записывается так: имя перемнной.свойство (метод)
  • length - длина строки
  • prototype - создает свое свойство или метод к объекту
  • charAt (index) - возвращает символ, находящийся на позицие index
  • concat(string) - присоединят к строке переданный параметр (аналог +=)
  • indexOf(подстрока[,начиная откуда]) - ищет индекс первого вхождения подстроки в строку, начиная от переданного параметра (по умолчанию 0)
  • lastindexOf(подстрока[,начиная откуда])indexOf(подстрока[,начиная откуда]) - аналогично предыдущему, но поиск идет с конца, т.е. возвращается последнее вхождение, а не первое
  • slice (i1[,i2])- возвращает подстроку от i1 до i2, если i2 не задан, то до конца. Последний символ не включается
  • substring(i1,i2) - тоже самое, только включая последний символ
  • substr(index[,length]) - возвращает подстроку с заданной длинной начиная от  заданнного индекса
  • toLowerCase(string), toUppercase(string) - переводит строку в верхний или нижний регистр

Массивы

Массивы - множество переменных, объединеных общим именем.
Создание массива - name = new Array ([длинна])
Пример:
a=new Array;
a[0]=0;
a[1]="one";
a[2]=true;
И т.д.
Свойства и методы массивов в JavaScript:
  • length - длинна массива
  • prototype - добавление своего свойства (array.prototype.test = functest(); array.test() - новое свойство)
  • concat(array2) - прибавить второй массив к первому
  • join(разделитель) - создать из элементов массива строку с указанным разделителем
  • pop - выкинуть (удалить) последний элемент массива, вернув его значение
  • push (значение) - добавить элемент в конец массива и вернуть новую длинну массива
  • shift - удалить первый элемент и вернуть его значение
  • unshift (what) - добавить элемент в начавло массива
  • reverse() - инвертировать массив (из массива 1 2 3 получится 3 2 1)
  • slice (index1, index2) - подмассив от index1 до index2-1

Комментариев нет:

Отправить комментарий