-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfunction.js
More file actions
79 lines (62 loc) · 1.41 KB
/
function.js
File metadata and controls
79 lines (62 loc) · 1.41 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
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
var array = [3, 4];
var add = function(a, b){
return a + b;
};
var sum = add.apply(null, array);
console.log(sum);
var myObject = {
value:0,
increment: function(inc){
this.value += typeof inc === 'number' ? inc :1;
}
};
//方法调用
myObject.increment();
console.log(myObject.value);
myObject.increment(2);
console.log(myObject.value);
//函数调用
var sum = add(3,4);
console.log(sum);
//构造器调用模式
var Quo = function(string){
this.status = string
}; //创建一个构造器函数。它构造一个带有status属性的对象
//给Quo的所有实例提供一个名为get_status的公共方法
Quo.prototype.get_status = function(){
return this.status;
};
//构造一个Quo实例
var myQuo = new Quo("confused");
console.log(myQuo.get_status());
//apply调用模式
var statusObject = {
status: "A-OK"
};
var status = Quo.prototype.get_status.apply(statusObject);
console.log(status);
//闭包
var myObject = (function(){
var value = 0;
return {
increment: function(inc){
value += typeof inc === 'number' ? inc : 1;
},
getValue: function(){
return value;
}
};
}());
myObject.increment(3);
console.log(myObject.getValue());
//创建一个名为quo的构造函数
//它构造出带有get_status方法和status属性的一个对象
var quo = function(status){
return {
get_status: function(){
return status;
}
};
};
var myQuo = quo("amazed");
console.log(myQuo.get_status());