-
Notifications
You must be signed in to change notification settings - Fork 0
/
classlab.html
92 lines (71 loc) · 1.36 KB
/
classlab.html
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<script>
function _extends(target) {
target = Object(target);
for (var index = 1; index < arguments.length; index++) {
var source = arguments[index];
if (source != null) {
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key];
}
}
}
}
}
_extends(1, 2, 3);
function Emitter() {
this.events = [];
}
Emitter.prototype.add = function(x) {
this.events.push(x);
}
Emitter.prototype.debug = function() {
console.log(this.events);
}
function Person() {
if (!(this instanceof Person)) {
return new Person();
}
Emitter.call(this);
}
_extends(Person.prototype, Emitter.prototype);
var person = Person();
person.add(9);
person.debug();
/*
const properties = () => {
let self = {
list: []
}
Object.assign(self, {
add(item) {
this.list.push(item);
},
get() {
return this.list;
}
});
return self;
}
const person = (name) => {
let self = {
name: name
};
Object.assign(self, properties());
return self;
};
var me = person('john');
me.add('wallet');
var you = person('jane');
you.add('bag');
console.log(me.get());
console.log(you.get());
*/
</script>
</body>
</html>