File tree Expand file tree Collapse file tree 2 files changed +93
-4
lines changed Expand file tree Collapse file tree 2 files changed +93
-4
lines changed Original file line number Diff line number Diff line change 16
16
<a href =" #NodeJs " >Node.js</a >  ;  ;
17
17
<a href =" #html5nodejs " > html5</a >  ;  ;
18
18
<br />
19
+ <h3 name =" javascriptBase " >Javascript based</h3 >
20
+ 1.<a href =" https://github.com/wchaowu/javascript-code/tree/master/javascript-based/reference " >对象JavaScript 引用</a > <br />
21
+ 2.JavaScript this <br />
22
+ 3.JavaScript 闭包<br />
23
+ 4.JavaScript 事件</a > <br />
24
+ 5.<a href =" https://github.com/wchaowu/javascript-code/tree/master/javascript-based/crossDomain.js " >javascript 跨域</a > <br />
25
+
26
+
19
27
<h3 name =" OjectOriented " >Oject-Oriented</h3 >
20
28
1.<a href =" https://github.com/wchaowu/javascript-code/tree/master/object-oriented/Expressive-JavaScript " >JavaScript Expressive </a > <br />
21
29
2.<a href =" https://github.com/wchaowu/javascript-code/tree/master/object-oriented/Interfaces " > Interfaces </a > <br />
22
30
3.<a href =" https://github.com/wchaowu/javascript-code/tree/master/object-oriented/Introduction " >Introduction</a > <br />
23
31
4.<a href =" https://github.com/wchaowu/javascript-code/tree/master/object-oriented/Inheritance " > Inheritance </a > <br />
24
- <h3 name =" javascriptBase " >Javascript based</h3 >
25
- 1.<a href =" https://github.com/wchaowu/javascript-code/tree/master/javascript-based/this " >JavaScript this </a > <br />
26
- 2.<a href =" https://github.com/wchaowu/javascript-code/tree/master/javascript-based/closure " >JavaScript 闭包</a > <br />
27
- 3.<a href =" https://github.com/wchaowu/javascript-code/tree/master/javascript-based/event " >JavaScript 事件</a > <br />
32
+
28
33
<h3 >Jquery</h3 >
29
34
为了更加了解Jquery实现机制可以先了解
30
35
<a href =" https://github.com/madrobby/zepto#readme " >zepto</a >
Original file line number Diff line number Diff line change
1
+ /*正常的情况*/
2
+ var a = 5 ;
3
+ var b = a ;
4
+
5
+ b += 3 ;
6
+
7
+ alert ( b ) ; //8
8
+ alert ( a ) ; //5
9
+
10
+
11
+
12
+ //对象和函数都是引用的关系
13
+ var a = [ 1 , 2 , 3 ] ;
14
+ var b = a ;
15
+
16
+ b . push ( 4 ) ;
17
+
18
+ alert ( b ) ; //1,2,3,4
19
+ alert ( a ) ; //1,2,3,4*/
20
+
21
+ //数组重新写
22
+ var a = [ 1 , 2 , 3 ] ;
23
+ var b = a ;
24
+ b = [ 1 , 2 , 3 , 4 ] ;
25
+
26
+ alert ( b ) ; //1,2,3,4
27
+ alert ( a ) ; //1,2,3
28
+
29
+ /*对象赋值*/
30
+ var obj = {
31
+ a : 10
32
+ } ;
33
+ var obj2 = obj ;
34
+
35
+ obj2 . a = 20 ;
36
+
37
+ alert ( obj . a ) ; //20*/
38
+
39
+ //赋值解决方案
40
+ var obj = {
41
+ a : 10
42
+ } ;
43
+
44
+ function copy ( obj ) { //浅拷贝
45
+
46
+ var newObj = { } ;
47
+
48
+ for ( var attr in obj ) {
49
+ newObj [ attr ] = obj [ attr ] ;
50
+ }
51
+
52
+ return newObj ;
53
+
54
+ }
55
+
56
+ var obj2 = copy ( obj ) ;
57
+
58
+ obj2 . a = 20 ;
59
+
60
+ alert ( obj . a ) ; //10
61
+
62
+ //解决方案二
63
+ function deepCopy ( obj ) { //深拷贝
64
+
65
+ if ( typeof obj != 'object' ) {
66
+ console . trace ( ) ;
67
+ return obj ;
68
+ }
69
+
70
+ var newObj = { } ;
71
+
72
+ for ( var attr in obj ) {
73
+ newObj [ attr ] = deepCopy ( obj [ attr ] ) ;
74
+ }
75
+
76
+ return newObj ;
77
+
78
+ }
79
+
80
+ var obj2 = deepCopy ( obj ) ;
81
+
82
+ obj2 . a . b = 20 ;
83
+
84
+ alert ( obj . a . b ) ; //10
You can’t perform that action at this time.
0 commit comments