学习和工作中经常会通过搜索引擎的引导进入到博客园中,技术大牛们的知识概括往往一针见血解决了困扰我很久的大大小小的问题。可是一直都是看别人写的博客,自己一直没动过手,直到看到一个博客说到,从简到繁地记记读书笔记或知识总结是促进技术进步的一个很好的方法,觉得非常在理,学习后的整理更能记得牢固,于是最近下定决心,开始我的博客园“生活”。
说了从简到繁,作为一个前端小小小小白,我决定把经典的前端书籍的读书笔记写在这里,说不定以后遗忘的时候返回来看到会有豁然开朗的感觉(偷笑)。
-
第一章——JavaScript简史
以前的Web标准中,HTML和CSS通常占据着核心的地位,后来W3C批准了另一项技术,所有与标准相兼容的Web浏览器都支持它,这就是DOM(文档对象模型:Document Object Model)。通过DOM我们可以给文档增加交互能力,就像利用CSS给文档添加样式一样。
初期DOM是属于试验性质的,称为“第0级DOM(DOM Level 0)”,未形成统一标准初期阶段,第0级DOM常见用途是翻转图片和验证表单数据,直到浏览器产品的更新,DOM Lv0遇到麻烦陷入困境。
而后诞生DHTML(动态HTML),背后含义是(1)利用HTML把网页标记成元素;(2)利用CSS设置元素样式和它们的显示位置;(3)利用Javascript实时地操控页面和改变样式。但以上三点只是理论可行,受浏览器兼容性的困扰,解决DOM问题时没有统一的方法。使得当时的程序猿编写DOM脚本时还要区分不同浏览器环境,直到1998年W3C推出了一个标准化DOM,称为“第一级DOM”
直到今天几乎所有浏览器都内置了对DOM的支持,还有HTML5 DOM带来的众多新特性,逐渐终于可以“编写一次,随处运行”了。
-
第二章——JavaScript语法
JS代码必须通过HTML/XHTML文档才能执行,执行可以有两种方式:
1、将JS代码放在<head>标签中的<script>标签之间;
2、把JS代码另存在一个扩展名为.js的独立文件中,通过HTML中放一个<script>标签,并使用src属性指向文件,例如<script src = "file.js"></scirpt>。
但最好的方法是把<script>标签放在HTML文档的最后,</body>标签之前,即:
<body> body的内容...... <script src = "file.js"></scirpt> </body>
这样能使浏览器更快地加载页面(书的第5章详细讨论)。
每一次改变.js文件的内容,只需要在浏览器重新载入.html文件即可看到效果,这就是JS这种解释型程序设计语言与Java、C++等编译型语言需要编译器不同的地方。JS直接由浏览器的JS解释器读入源代码并执行。
JS语句在同一行中需要用分号隔开;注释可以使用“//”或者“/* ..... */”进行多行注释;变量声明可以单独,也可以一次性声明多个,变量命名区分大小写,建议采用驼峰命名法;JS中单引号或双引号引住的字符串在JS这种弱类型语言中语义完全相同;数据类型含有字符串、数值、布尔值、数组(数组下标从0开始)、对象。
如果在某个函数中使用了var关键字,那个变量就被视为一个局部变量,它只存在于这个函数的上下文中;反之,如果没有使用var,那个变量就将被视为一个全局变量,如果脚本里已经存在一个与之同名的全局变量,这个函数就会改变那个全局变量的值。
对象是自包含的数据集合,包含在对象里的数据可以通过两种形式访问——属性、方法。(1)属性是隶属于某个特定对象的变量;(2)方法是只有某个特定对象才能调用的函数。所以对象就是由一些属性和方法组合在一起而构成的一个数据实体。Math对象和Date对象等这些属于JS的内建对象。此外,浏览器预定义的对象称为宿主对象,例如Form、Image、Element等。document对象也是宿主对象,用来获得网页上任何一个元素的信息。