js读书笔记(1)

之前或多或少得在自己的开发中用到过js以及jQuery类库,了解得不深入,刚好最近在学校空闲时间比较多,想借着这段时间对JS编程知 识进行一个较为完整的学习,以便毕业出去之后找工作更有竞争力。我得js学习主要使用的《Javascript高级程序设计》,这本号称是 JavaScript方面超越经典的书(PS:经典的是“大犀牛”那本),在这里把JavaScript重要知识点进行一个总结,方便以后快速地复习,写的不好的地方 还望看到的盆友加以指正。

   插播一个今天刚看到的一个有意思的图片:

          2016年 JavaScript今年再次蝉联开发者最受欢迎技术(Most Popular Technologies )第一名

 

    好了,废话太多了,切入正题:

    一.完整的JavaScript由3部分组成:核心(ECMAScript),文档对象模型(DOM),浏览器对象模型(BOM)

  •       ECMAScript:ECMAScript是一种由ECMA(European Computer Manufacturers Association)通过ECMA-262标准化的脚本程序脚本语言,它定义了这门语言的基础,与Web浏览器没有依赖关系,Web浏览器只是 ECMAScript实现可能的宿主环境之一。ECMAScript大概包含的组成部分有:语法,类型,语句,关键字,保留字,操作符,对象。
  •       DOM:中文名文档对象模型,它是针对XML但经扩展可用于HTMl的应用程序编程接口(API)。在这里的学习主要是利用DOM对HTML页面进行多层节点结构的映射。
  •       BOM:中文名浏览器对象模型,利用它可以访问和操作浏览器的窗口,但它作为JavaScript的实现部分却没有相关的标准,直到html5的出现,使得这个问题得到解决。

    .在HTML中使用JavaScript

      按照惯例,所有<script>元素都应该放在页面的<head>元素中,这样也意味着必须等到包含在<head>元素中的JavaScript代码都解析和执行完成后,才开始呈现页面内容。这样势必存在当JavaScript代码太多后,使用这种方式会导致浏览器在呈现页面时出现明显的延迟,也即在延迟期间的浏览器窗口为一片空白。为解决这个问题,一般将<script>元素放在<body>元素页面的内容后面,即</body>结束标签之上。

       引入JavaScript脚本一般来说可以直接使用<script>元素嵌入JavaScript代码,此时只需指定type属性即可:

         <script   type="text/javascript">

               /*脚本*/

        </script>

        还有一种也是推荐使用的方法,利用src属性引入外部要执行的脚本文件:

          <script   type="text/javascript" src="相应文件的URL"></script>

        这种方式具有可维护性高,可缓存等等优点,需要注意的是,带有src属性的<script>元素不应该在其<script></script>中间包含额外的js代码,若包含,额外的代码将被浏览器忽略。

       <script>元素有两个只适用于外部脚本文件的属性,一个是的defer,另一个是async。

       defer属性意为延迟,表明脚本在执行时不会影响页面构造,也即脚本会被延迟到整个页面都解析完毕后再运行。但注意浏览器还是会立即下载,并且延迟脚本总是按照指定的顺序执行。

       async属性意为异步,目的是告诉浏览器立即下载文件,但不让页面等待脚本的下载执行,从而异步加载页面的其它内容,与defer不同的是它不保证按照从上之下的指定先后顺序执行,所以需要确保引入的不同js文件之间互不依赖。

       例:<script type="text/javascript" defer="defer" src=""/>

             <script type="text/javascript" async src=""/>

     

posted @ 2016-05-19 10:17  好天气  阅读(247)  评论(0编辑  收藏  举报