Марк Кан - Основы программирования на JavaScript

Здесь есть возможность читать онлайн «Марк Кан - Основы программирования на JavaScript» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Прочая околокомпьтерная литература, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Основы программирования на JavaScript: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Основы программирования на JavaScript»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

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

Основы программирования на JavaScript — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Основы программирования на JavaScript», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

function myFunction(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10){

// здесь располагается код

}

Во многих случаях может понадобиться функция, которой требуется определенное количество аргументов, но не всегда требуются все. В JavaScript не нужно передавать все 10 аргументов в функцию, которая объявлена с 10 аргументами. Если передать только первые 3 , то функция будет иметь только 3 определенных аргумента. Это необходимо учитывать при написании функций. Например, можно написать функцию, которой всегда требуются 3 первых аргумента, но следующие 7 являются необязательными:

function myFunction(arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10){

// код с arg1

// код с arg2

// код с arg3

if(arg4){

// код с arg4

}

if(arg5 && arg6 && arg7){

// код с arg5, arg6 и arg7

if(arg8){

// код с arg8

}

}

if(arg9 || arg10){

// код с arg9 или arg10

}

}

Можно видеть, что в коде выполняется простая проверка if(arg) . Если аргумент не передается в функцию, то при попытке использовать этот аргумент будет получено значение undefined . При использовании undefined в качестве логического (булевого) значения ( true / false ), как в операторах if , оно воспринимается как false .

Поэтому, если arg4 не был передан в приведенном выше примере, то он является undefined и тело оператора if не выполняется.

Как быть, когда трудно определить, сколько потребуется аргументов? Можно иметь функцию, которая получает от 1 до n аргументов и выполняет с каждым из них одну и ту же задачу. На этот случай JavaScript имеет в каждой функции объект arguments . Объект arguments содержит все аргументы функции:

function myFunction(){

for(var i=0; i

alert(arguments[i].value);

}

}

Этот код сообщит значение всех переданных ему объектов. Если передать 100 объектов, то будет получено 100 сообщений. Более полезной функцией было бы, возможно, скрытие/вывод всех переданных функции объектов.

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

function multiply(){

var out=1;

for(var i=0; i

out *= arguments[i];

}

return out;

}

function add(){

var out=0;

for(var i=0; i

out += arguments[i];

}

return out;

}

function doAction(action){

alert(action(1, 2, 3, 4, 5));

}

Test Multiply

Test Add

Test Multiply Test Add

В этом небольшом фрагменте кода происходит очень многое. Вначале просто определяют две функции: multiply и add . Функция multiply просто перемножает все переданные ей числа. Аналогично, функция add складывает все переданные ей числа. Тонкости начинаются при использовании действий onclick двух созданных кнопок. Можно видеть, что при щелчке на любой из двух кнопок в функцию doAction передается объект. Ранее мы всегда передавали переменные или объекты HTML (такие, как поля ввода в предыдущем примере). В этом примере передаются функции. Функции можно передавать таким же способом, как и любой другой объект, и когда они передаются, их можно вызывать таким же способом, как и любую другую функцию. Изменяется только ее имя.

Таким образом функция doAction получает другую функцию в качестве аргумента! Если передается функция multiply , то функция doAction передает ей значения от 1 до 5 , и мы получаем в результате 120 . Если в doAction передается функция add , то ей также передаются значения от 1 до 5 , и в результате мы получаем значение 15 .

Это в действительности одно из наиболее мощных свойств JavaScript , и оно будет более подробно рассмотрено в следующих лекциях. Пока достаточно понять общий принцип.

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

Кроме вложения функций, важно отметить, что имеется несколько различных способов объявления функций:

function myFunction(){

function nestedFunction1(arg1, arg2, arg3){

alert(arg1+arg2+arg3);

}

var nestedFunction2 = function(arg1, arg2, arg3){

alert(arg1+arg2+arg3);

}

var nestedFunction3 = new Function('arg1, arg2, arg3', 'alert(arg1+arg2+arg3);');

}

В этом примере функции nestedFunction1 , nestedFunction2 и nestedFunction3 являются одинаковыми по своим возможностям. Единственное различие состоит в том, как они определяются. nestedFunction1 объявлена, как это делалось раньше. Синтаксис для nestedFunction2 немного отличается. Мы задаем для функции переменную this.nestedFunction2 . Синтаксис этого объявления будет следующий имяПеременной= function(аргументы){ . Аналогично для функции nestedFunction3 задается переменная для новой функции. Однако это объявление существенно отличается, так как мы определяем функцию с помощью строк. Третий вариант используется редко, но является очень полезным, когда используется. Он позволяет создать строку, содержащую код выполняемой функции, а затем определить функцию с помощью этой строки.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Основы программирования на JavaScript»

Представляем Вашему вниманию похожие книги на «Основы программирования на JavaScript» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Основы программирования на JavaScript»

Обсуждение, отзывы о книге «Основы программирования на JavaScript» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x