comparison core-javascript/javascript-exercises/closure-exercises.js @ 164:44d0ccb983d3 javascript-exercises

Move files to populate javascript-answers folder with closure-exercises.js and testtools.js.
author jf3243
date Wed, 09 Nov 2011 17:29:18 +0000
parents core-javascript/core-javascript-work/closure-exercises.js@8cacef25f3d8
children
comparison
equal deleted inserted replaced
163:db35829a438f 164:44d0ccb983d3
1 var something;
2
3 TEST('anon', function()
4 {
5 var answer;
6
7 // Please write your answer here.
8
9 assert( answer() === 1 );
10 });
11
12
13 TEST('anon', function()
14 {
15 var outer_function = function(){
16
17 var answer;
18
19 // Please write your answer here.
20
21 return answer;
22 };
23
24 var my_inner_function = outer_function();
25
26 assert( typeof my_inner_function === 'function' );
27 assert( my_inner_function() === 1 );
28 });
29
30
31 TEST('anon', function()
32 {
33 var outer_function = function(){
34
35 var answer;
36
37 // Please write your answer here.
38
39 return answer;
40 };
41
42 assert( outer_function()() === 1 );
43 });
44
45
46 TEST('anon', function()
47 {
48 var outer_function = function(n){
49
50 var answer;
51
52 // Please write your answer here.
53
54 return answer;
55 };
56
57 assert( outer_function(1)() === 1 );
58 assert( outer_function(2)() === 2 );
59 assert( outer_function(3)() === 3 );
60 });
61
62
63 TEST('anon', function()
64 {
65 var outer_function = function(n){
66
67 // Please write your answer here.
68 };
69
70 assert( outer_function(1)() === 1 );
71 assert( outer_function(2)() === 2 );
72 assert( outer_function(3)() === 3 );
73 });
74
75
76 TEST('anon', function()
77 {
78 var value = 1;
79
80 var get_value = function(){
81 return value;
82 };
83
84 assert( get_value() === something );
85 });
86
87
88 TEST('anon', function()
89 {
90 var value = 1;
91
92 var set_value = function(n){
93 value = n;
94 };
95
96 set_value(2);
97 assert( value === something );
98 });
99
100
101 TEST('anon', function()
102 {
103 var value = 1;
104
105 var get_value = function(){
106 return value;
107 };
108
109 var set_value = function(n){
110 value = n;
111 };
112
113 assert( get_value() === something );
114
115 set_value(2);
116 assert( get_value() === something );
117 });
118
119
120 TEST('anon', function()
121 {
122 var value = 1;
123
124 var ddd = function(aaa, bbb){
125 return {
126 // Please write your answer here.
127 };
128 };
129
130 var obj = ddd(1, 2);
131
132 assert( obj.aaa === 1 );
133 assert( obj.bbb === 2 );
134
135 });
136
137
138 TEST('anon', function()
139 {
140
141 var get_set_factory = function(){
142
143 // Please write your answer here.
144
145 return {
146 get : get,
147 set : set
148 };
149 };
150
151 var tmp;
152 tmp = get_set_factory();
153 var get_a = tmp.get;
154 var set_a = tmp.set;
155
156 tmp = get_set_factory();
157 var get_b = tmp.get;
158 var set_b = tmp.set;
159
160
161 set_a('aaa');
162 assert( get_a() == 'aaa' );
163
164 set_b('bbb');
165 assert( get_b() == 'bbb' );
166
167 assert( get_a() == 'aaa' );
168 });