@@ -99,6 +99,29 @@ ______
9999+ 内部函数可以引用外层的参数和变量
100100+ 参数和变量不会被垃圾回收机制收回
101101
102+
103+ #### 浏览器的渲染过程
104+
105+ + 解析HTML构建DOM树,并行请求css、image、js
106+ ``` js
107+ // 不需要DOM处理script节点。script位置不影响首屏显示时间
108+ // 浏览器解析HTML是自上而下的线性过程,script作为HTML的一部分也遵守这个规则
109+ // 因此,script会延迟DOMContentLoad,只显示其中部分首屏内容,从而印象首屏显示时间
110+ ```
111+ + css文件下载完毕,构建CSSOM(CSS树)
112+ + CSSOM构建结束后,和DOM一起生成Render tree(渲染树)
113+ + Layout布局:计算每个节点在屏幕中的位置
114+ + 显示(Painting):通过显卡吧把页面画到屏幕上
115+
116+ #### DOM树和渲染树的区别
117+
118+ + DOM树与HTML标签一一对应,包括head和隐藏元素
119+ + 渲染树不包括head和隐藏关系。每个节点都有对应的CSS属性
120+
121+ #### js作用域
122+
123+ + function(){}内的区域,称谓函数作用域
124+
102125***
103126
104127##### splice() 方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。
@@ -176,6 +199,55 @@ var n = str.split("o");
176199 // Hello world! Have a nice day!
177200
178201 ```
202+
203+ ##### 正则表达式
204+
205+
206+ + ` {m,n} ` 最少出现m次,最多出现n次
207+ + ` {m,} ` 至少出现m次
208+ + ` {m} ` == ` {m,m} ` 表示出现m次
209+ + ` [abc] ` 出现a、b、c中的任何一个
210+ + ` ? ` 等价于 ` {0,1} ` 表示出现或者不出现
211+ + ` + ` 等价于 ` {1,} ` 表示出现至少一次
212+ + ` * ` == ` {0,} ` 出现任意次数,有可能不出现
213+ + ` \d ` 就是` [0-9] `
214+ + ` \D ` 就是` [^0-9] `
215+ + ` \w ` 就是` [0-9a-zA-Z_] `
216+ + ` \W ` 就是` [0-9a-zA-Z_] ` 非单词字符
217+ + ` \s ` 就是` [ \t\v\n\r\f] ` 空白字符
218+ + ` \S ` 就是` [^ \t\v\n\r\f] ` 非空白字符
219+ + ` . ` 就是` [^\n\r\u2080\u2090] ` 通配符,表示几乎任意字符
220+ + ` (p1|p2|p3) ` 表示其中任选其一 前面的匹配上后就不在匹配后面的了
221+ ``` js
222+ var r = / ab{2,5} c/ g ;
223+ var string = " abc abbc abbbc abbbbc abbbbbc abbbbbbc" ;
224+ console .log ( string .match (regex) );
225+ // ['abbc','abbbc','abbbbc','abbbbbc']
226+ ```
227+
228+ ` [abc] ` 出现a、b、c中的任何一个
229+
230+ ``` js
231+ / a[123] b/ g
232+ // a1b a2b a3b
233+ ```
234+
235+ ` [123456abcdefGHIJKLM] ` 等价于 ` [1-6a-fG-M] ` 其中的任意字符
236+ ``` js
237+ // [-az] [az-] [a\-z]
238+ // 取得'-'、'a'、'z'任意字符
239+ ```
240+ ` [^abc] ` 除了a、b、c之外的任意字符
241+
242+ ``` js
243+ ` \d ` 就是` [0-9]`
244+ ` \D ` 就是` [^0-9]`
245+ ` \w ` 就是` [0-9a-zA-Z_]`
246+ ` \W ` 就是` [0-9a-zA-Z_]` 非单词字符
247+ ` \s ` 就是` [ \t\v\n\r\f ]` 空白字符
248+ ` \S ` 就是` [^ \t\v\n\r\f ]` 非空白字符
249+ ` .` 就是` [^\n\r\u2080\u2090 ]` 通配符,表示几乎任意字符
250+ ```
179251***
180252
181253
@@ -300,8 +372,6 @@ CSS画三角形
300372#### MVC
301373#### MVP
302374
303- #### uuu
304-
305375
306376### SASS
307377
@@ -316,3 +386,37 @@ body
316386```
317387scss以".scss"后缀为扩展名。可以将".css"直接换为".scss"
318388
389+
390+ ### JQuery
391+
392+ [ JQuery实例] ( https://www.runoob.com/jquery/jquery-examples.html )
393+
394+ ``` html
395+ $(document).ready(function(){
396+ $("p").click(function(){
397+ $(this).hide();
398+ });
399+ });
400+ ```
401+
402+ + 隐藏和显示
403+
404+ ``` html
405+ $("button").click(function(){
406+ $("p").toggle();
407+ });
408+ ```
409+
410+ + 动画 animate() 方法
411+
412+ ``` html
413+ $("button").click(function(){
414+ $("div").animate({left:'250px'});
415+ });
416+ ```
417+
418+ + load()
419+
420+ ```
421+ $(selector).load(URL,data,callbacck)
422+ ```
0 commit comments