Меню
✘Скрыть меню
Меню заработка
✘Скрыть меню
Загрузка.. nostroma.online from NOSTROMA - best life and beautiful workЭто ужасно тяжелая работа — ничего не делать – Оскар УайльдРешающую роль в работе играет не всегда материал, но всегда мастер – Максим ГорькийЯ слишком энергичен, чтобы работать – Марсель АшарЧто привлекло меня в карьере писателя? Отсутствие бумажной работы.Одни люди работают только для того чтобы работать, другие – для того, чтобы иметь возможность не работать в будущем.Занятие ерундой на рабочем месте развивает боковое зрение, слух и бдительность в целомСтоит статýя в лучах заката с огромным буем, в руках - граната.Друзья, если вы попались на лохотрон, не будьте эгоистами - предупредите других о таком сайте!Секрет гения — это работа, настойчивость и здравый смысл. Томас Эдисон
Меню заработка

Курсы JavaScript

Урок 18. Оператор continue, использование блоков try catch finally, объект Math - математические операции.

Содержание курса

Оператор continue

continue - прекращает текущую итерацию цикла и продолжает со следующей итерации.

Синтаксис оператора: continue[label]; где -

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

continue в отличие от break не останавливает выполнение цикла, а передаёт управление на проверку условия цикла для while и передает управление на обновление условия для for.

Рассмотрим простой пример - используем оператор continue в цикле for:

<!DOCTYPE html>
	<html>
		<head>
			<meta charset="utf-8">
			<title>Оператор continue</title>
		</head>
		<body>
			<script>
				for(var i = 0; i < 10; i++){
					if (i == 6) continue;
					document.write(i + '<br />');
				}
			</script>
		</body>
	</html>
Показать в браузере (откроется в новой вкладке)

В этом примере в документ будут выведены все числа от 0 до 9, кроме 6.

Циклы можно вкладывать друг в друга, при этом переменные внутри условий цикла не должны быть одноимёнными. В следующем примере при помощи вложенных друг в друга циклов for будет отрисована шахматная доска (8 × 8):

<!DOCTYPE html>
	<html>
		<head>
			<meta charset="utf-8">
			<title>Вложенные циклы</title>
		</head>
		<body>
			<script>
				var white = "#fff";  		/*Чёрный цвет*/
				var black = "#000"; 	/*Белый цвет*/
				var n = 8;                 	/*Число строк и столбцов - 8 × 8*/
				var color = black;		/*Текущий цвет*/
				
				/*Отрисовка таблицы*/
				document.write("<table style='border: 2px solid black'>");
				
				/*Цикл рядов*/
				for(var tr = 1; tr <= n; tr++){
					document.write("<tr>");
					
					/*Цикл ячеек*/
					for(var td = 1; td <= n; td++){
						document.write("<td style = \"background-color:" + color + "\">&nbsp;&nbsp;&nbsp;&nbsp;</td>");
						/*Смена текущего цвета*/
						color = (color == black) ? white : black;
						/*Условие шахматного порядка для чётного числа ячеек*/
						if(td == n){color = (color == black) ? white : black;}
					}
					document.write("</tr>");
				}
				document.write("</table>");
			</script>
		</body>
	</html>
Показать в браузере (откроется в новой вкладке)

Использование блоков try catch finally

Часто приходится сталкиваться с явлением, когда написанный код JavaScript срабатывает в одном браузере, но выдаёт ошибку при попытке выполнения в другом. В то же время в JS есть множество вариантов выполнить одно и то же различными способами. Однако при возникновении ошибки, выполнение JS-кода прекращается, поэтому перебирать различные варианты сомнительных в плане работоспособности кодов следует в блоках try{}.

Конструкция try{} catch(e){} finally{} работает следующим образом: при возникновении ошибки работы кода в блоке try{} она отлавливается в переменную e блока catch(e){}, после чего выполняется код в блоке finally{}, если он есть. В любом случае работа всего кода JavaScript не останавливается, даже если возникла ошибка в блоках и try{}, и finally{}. При этом вывод возникшей ошибки доступен через e.message в блоке catch(e){}:

<!DOCTYPE html>
	<html>
		<head>
			<meta charset="utf-8">
			<title></title>
		</head>
		<body>
		
			<script>
				try{
					alert("Перед ошибкой");
					dfjabhklh; /* Блок с ошибкой */
					alert("После ошибки");
				} 
				
				catch(e){
					alert("Обработка ошибки: " + e.message);
					document.write("Обработка ошибки: " + e.message);
				} 
				
				finally{
					alert("Завершающие действия");
				}
				
				alert("После всех блоков");
				
			</script>
		
		</body>
	</html>
Показать в браузере (откроется в новой вкладке)

Если в блоке catch(e){} произойдёт ошибка, то выполнится код в блоке finally{} и на этом выполнение всего кода JS прекратится.

Определение и вызов функции в html документе

После того, как функция определена (описана) в html документе, она может быть вызвана простым указанием её имени с круглыми скобками:

<!DOCTYPE html>
	<html>
		<head>
			<meta charset="utf-8">
			<title>Определение и вызов функции</title>
		</head>
		<body>
		
			<script>
			
			/* Определение функции */
				function sayHello(){
					alert("Привет!");
					document.write("Привет!");
				}
				
			/* Вызов функции */
				sayHello();
				
			</script>
		
		</body>
	</html>

Функции описанные в отдельном js-файле можно вызывать в нескольких документах, к которым этот js-файл подключён.

Объект Global - сервисный объект

Объект Global предоставляет дополнительные сервисные свойства и методы языка JavaScript. Сам объект Global может при этом явно не указываться. Рассмотрим некоторые методы этого объекта:

parseInt

С этим методом мы уже знакомились ранее, parseInt() превращает строковый тип данных в числовой:

var str = "5";
var str2 = "Вася";
var str3 = true;
var str4 = "12Вася";

console.log(parseInt(str));
console.log(parseInt(str2));
console.log(parseInt(str3));
console.log(parseInt(str4));

/* Выведет:
 5
 NaN
 NaN
 12 */

В случае, если строка не может быть преобразована в число, parseInt() возвращает NaN.

parseFloat

Метод parseFloat() позволяет обрабатывать не только целые числа, но и дробные:

var str = "5";
var str2 = "5.24";
var str3 = true;

console.log(parseFloat(str));
console.log(parseFloat(str2));
console.log(parseFloat(str3));

/* Выведет:
 5
 5.24
 NaN */

Объект Math - математические операции

Объект Math содержит в себе свойства и методы, которые связаны с математическими вычислениями, рассмотрим некоторые из них:

Методы объекта Math
Значение Описание
ads() Модуль числа
pow(число, степень) Возведение в степень
sqrt() Квадратный корень
sin(), cos(), tan(),
asin(), acos(), atan()
Синус, косинус, тангенс,
арксинус, арккосинус, арктангенс
log() Вычисление логарифма
random() Возвращает псевдослучайное число от 0 до 1
round() Возвращает число, округлённое к ближайшему целому (математическое округление)
ceil() Возвращает число, округлённое в большую сторону
floor() Округление в меньшую сторону
max(), min() Методы с произвольным числом параметров; max возвращает наибольшее из них, а min - наименьшее


Поглядим на примеры:

var a = Math.min(7, 4, 9, 2);
alert(a);

/* Выведет: 2 */

var a = Math.max(7, 4, 9, 2);
alert(a);

/* Выведет: 9 */

var a = Math.round(8.25);
alert(a);

/* Выведет: 8 */

var a = Math.pow(5, 3);
alert(a);

/* Выведет: 125 */

var a = Math.random();
alert(a);

/* Выведет случайное число от 0 до 1 */

Комментарии

Введите Ваше имя:*

Введите e-mail:

Ваш комментарий:*

* Обязательные поля