-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdz8.html
More file actions
54 lines (45 loc) · 2.3 KB
/
dz8.html
File metadata and controls
54 lines (45 loc) · 2.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Домашнее задание 8</title>
</head>
<body>
/*
a = undefined потому что на стадий инициализаций объекту window добовляются все переменные со значением undefined. Так как на момент выполнения скрипта свойство будет уже присвоено условие будет равно false и присвоения не произойдет
*/
if (!("a" in window)) { // если нет свойства а в объекте window то выполнить...
var a = 1;
}alert(a);
/*
Будет ошибка так как функций а не существует, потому что она евляется значением переменной b. для вызова функций а нужно использовать переменную b
*/
var b = function a(x) {
x && a(--x);
};
alert(a);
/*
выведет содержимое функции
*/
function a(x) { // создаем функцию которая принимает аргумент
return x * 2; // возвращаем результат
}
var a; //Метод "а" уже существует в объекте window, а так как мы не присваеваем новго значения то он остается со старым значениме.
alert(a); // так как мы вызваем функцию без скобок мы просто выводим содержимое функции
/*
ответ: 10
*/
function b(x, y, a) { //Принимаем 3 аргумента
arguments[2] = 10; // для третьего аргумента (тоесть - а) присваеваем 10
alert(a); // выводим значение аргуменат а
}
b(1, 2, 3);// вызываем функцию с аргументами.
/*
ответ объект window.
*/
function a() {
alert(this); // поскольку при вызове мы указали null, выводится window. Та как при указаний для call/apply значений null или undefined без "use strict" функция получает this = window.
}
a.call(null); // вызываем функцию с обеъктом null.
</body>
</html>