《Javascript DOM编程艺术》 读书笔记 —— 好书,通俗易懂!!!!! 相当的严谨!!!!

时间:2022-01-05 15:59:28

1.javascript弱类型语言,解释性语言。

2.javascript数据类型:字符串(String)、数字(Number)、布尔(Boolean)、数组(Array)、对象(Object)、空(Null)、未定义(Undefined)。

javascript内建对象和用户自定义对象。  宿主对象(浏览器提供的)

3.数组索引下标从0开始。

4.函数:多次使用同一段代码!

变量的命名:多个单词使用下划线  temp_celsius;

函数的命名:驼峰法则哦;

5.return false: 阻止a元素的跳转! 默认行为没有被触发!

6.http性能优化:

A:减少请求的数量。

B:脚本文件放到文档的末尾。

C:压缩代码。

7.伪协议:"javascript:"

8.注意DOM Core 和 HTML-DOM:    (HTML Dom、 Css Dom、 Dom core)

1.HTML-DOM代码更短。但只能处理Web文档!

2.标准DOM

9.前端:处理视觉和交互的!

10.CDN:  1.资源服务器,很多站点都用,比如百度,用户访问过baidu,如果baidu用到了百度的CDN,你的网站也用到了,那么同样的文件就不会重新下载了!

当然了,必须要有浏览器的缓存哦!

2.CDN底层是使用地理位置最近、速度最快的服务器提供相应的文件。       CDN服务器:分布式的!  高访问量!

11.引号的嵌套:书上有涉及到哦!

                  第二遍     补漏

1.转义: \  135°

2.赋值: =

等于: ==            值一致

绝对等于: ===    值和类型一致

3.作用域:

  a:可访问范围

  b:变量的生命周期

4.对象: 属性  +  方法

5.javascript的内建对象(javascript语言自带的)和用户自定义对象和宿主对象(浏览器自带的 BOM)。

6.setAttribute做出的修改不会反映在文档本身的源码里哦!   哦哦!

7.提升站点性能,减少http请求,将js文件合并到一个里面。

8.childNodes:获取任何一个元素的所有子元素(子节点)包含空格和换行符等。

nodeType属性:

    a:元素节点:1

    b:属性节点:2

    c:文本节点:3

nodeValue:节点的值。       node.childNodes[0]   等价于  node.firstChild

               node.childNodes[node.childNodes.length - 1]   等价于 node.lastChild

9.渐进增强    优雅降级(平稳退化)

10.伪协议:让我们通过一个链接来调用javascript函数。

11.根据HTTP规范,浏览器每次从同一个域名中最多只能同时下载两个文件。

12.js文件放到body的末尾,不阻塞渲染引擎对页面的渲染。           (Web发布的时候要注意哦!)

js文件整合到一个文件里,减少http请求。

文件压缩(空格和注释删掉),减小体积,加快下载速度。

13.结构化程序设计: 函数应该只有一个入口和一个出口。

14.html css  js分离的好处,   id class等都可以当作钩子、桥梁,联系起css、js与html之间的关系。

15.注意Dom Core 和 HTML-DOM

document.getElementsByTagName("form")    等价于  document.forms

element.getAttribute("src")    等价于   element.src

16. DOM:文档即是节点树。

17.XMLHttpRequest对象: 浏览器和服务器的代理,中间人!   它来发送请求,处理响应。

18.有些浏览器会限制ajax请求的协议类型。

同源策略:只能请求同一个域中的数据。

19.抽象:将具体的东西改进为一个较为通用的东西的过程就是抽象。   抽象为了便于重用。

20.overflow: scroll; 不管溢出还是不溢出,都将显示滚动条。

overflow:auto; 内容确实溢出了,才会显示滚动条。

21.Modernizr    js库!      放在<head></head>里哦!     做兼容的!

22.编解码器:核心就是一个算法,用于压缩和存储视频;同时保证视频的品质。

视频编解码器:H.264       Theora     VP8

音频编解码器:MP3  aac  ogg

mp4:苹果公司的.

23.localStorage和sessionStorage:在客户端存储大型和复杂数据集的有效方案。

24.webSocket:与服务器进行开放的双向通信。

25.webWorker:在后台执行JavaScript。

26.客户端验证:提升用户的体验。

服务器端验证:保证系统的安全。

27.经验表明:一次请求一个大文件比多次请求多个小文件要更好。

28.web性能提升:减小网页文档的大小;还有就是让浏览器缓存。

CDN:解决分布共享库。  比如jquery文件 ,访问一个网站下载过,访问另一个就不会再次下载了。

内容分发网络,分散存储一些公共的内容。  访问jquery库的时候使用的是同一个公共的url; 由CDN服务器做判断,为你提供地理位置最近、响应速度最快的

服务器提供jquery文件。  相当于文件资源服务器你的,减轻你的服务器的响应负荷;而且是相同的url,所以很容易缓存。

Tips:  记得回头有空了再敲书上的代码哦!  代码是写会的!  理清代码的思维流程。