@@ -20,6 +20,12 @@ console.log(anotherVillain.name);
2020
2121//EXTRA
2222class UserSession {
23+ app = 'Ric-JS-Sandbox' ;
24+
25+ user = {
26+ instances : 0 ,
27+ } ;
28+
2329 constructor ( ) {
2430 if ( typeof UserSession . instance === 'object' ) {
2531 return UserSession . instance ;
@@ -28,4 +34,51 @@ class UserSession {
2834 UserSession . instance = this ;
2935 return this ;
3036 }
37+
38+ init ( name , username , userID , email ) {
39+ if ( this . user . instances === 0 ) {
40+ this . user . name = name ;
41+ this . user . username = username ;
42+ this . user . userID = userID ;
43+ this . user . email = email ;
44+ this . user . instances ++ ;
45+ return this . user ;
46+ }
47+ }
48+
49+ getData ( ) {
50+ let result = [ ] ;
51+ Object . keys ( this . user ) . forEach ( ( element ) => {
52+ result . push ( this . user [ element ] ) ;
53+ } ) ;
54+ return result ;
55+ }
56+
57+ close ( ) {
58+ return ( this . user = {
59+ instances : 0 ,
60+ } ) ;
61+ }
3162}
63+
64+ let session = new UserSession ( ) ;
65+
66+ console . log ( session ) ;
67+
68+ console . log ( session . getData ( ) ) ;
69+
70+ session . init ( 'Fred' , 'CrazyFred4564' , 7880003 , 'crazyfred@gmail.com' ) ;
71+
72+ console . log ( session ) ;
73+
74+ session . close ( ) ;
75+
76+ console . log ( session . getData ( ) ) ;
77+
78+ session . init ( 'Fred' , 'CrazyFred4564' , 7880003 , 'crazyfred@gmail.com' ) ;
79+
80+ console . log ( session . getData ( ) ) ;
81+
82+ session . init ( 'Sarah' , 'SunshineSarah2435' , 6550099 , 'sarahmilanesa@gmail.com' ) ;
83+
84+ console . log ( session . getData ( ) ) ;
0 commit comments