第二章 在HTML中使用JavaScript

要想把JavaScript放到网页中,就必须涉及到Web的核心语言HTML。向HTML页面中插入JavaScript的主要方法,就是使用<script>元素。下面我来归纳一下<script>标签比较重要的属性。

async属性(定义为异步脚本的属性):浏览器执行到这里时,在下载js脚本的同时会继续往下解析页面,比如下载其他资源资源,解析html或等待其他待加载的脚本等(异步执行js脚本)。当js脚本下载完了,才会暂停页面解析,立即执行js脚本;

defer属性(定义为延迟脚本的属性):浏览器执行到这里时,在下载js脚本的同时会继续往下解析页面,比如下载其他资源资源,解析html或等待其他待加载的脚本等(异步执行js脚本)。当文档完全被解析和显示后再执行!

注意:

①在现实中,如果存在多个异步脚本(延迟脚本),async(defer)属性并不能保证脚本间按先后顺序执行;在我们的页面中,最好不要出现多个异步脚本(延迟脚本);

②用<script&></script>嵌入JavaScript代码时,JavaScript代码中任何地方出现</script>字符串时都要转意,否则解析器会默认结束JavaScript代码的解析。特殊字符串转义,如下图:

字面量 含义
\' 单引号('),在用单引号表示的字符串中使用。例如:'He said, \'hey\' !'
\" 单引号("),在用双引号表示的字符串中使用。例如:"He said, \"hey\" !"
\& 和好
\\ 反斜杠
\n 换行符
\r 回车符
\t 制表符
\b 退格符
\f 换页符
\xnn 以十六进制代码nn表示一个字符(其中n为0-F)。例如,\x41表示"A"
\unnn 以十六进制代码nnn表示的一个Unicode(其中n为0-F)。例如,\u3a3表示希腊字符Σ

③HTML页面正常情况下是按顺序进行的,一行一行的执行,执行到<script>标签时就会停止继续向下执行,下载JavaScript代码或直接执行JavaScript代码。这样就会让页面显示渲染一部分卡一下执行JavaScript再渲染,给用户的体验很差!所以建议JavaScript代码尽量放在HTML页面最下方(JavaScript代码实在是不能放在最下面时可以使用window的onload事件等)

《JavaScript高级程序设计》笔记二的更多相关文章

  1. 简明python教程笔记

    自然字符串 如果你想要指示某些不需要如转义符那样的特别处理的字符串,那么你需要指定一个自然字符串.自然字符串通过给字符串加上前缀r或R来指定. r"Newlines are indicate ...

  2. 《简明python教程》笔记一

    读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info  安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...

  3. 学习笔记《简明python教程》

    学习笔记<简明python教程> 体会:言简意赅,很适合新手入门 2018年3月14日21:45:59 1.global 语句 在不使用 global 语句的情况下,不可能为一个定义于函数 ...

  4. 简明Python教程 ~ 随书笔记

    本文是阅读<简明Python教程>所做的随书笔记,主要是记录一些自己不熟悉的用法,或者所看到的比较有意思的内容,本书英文版A Byte of Python, 中文译版 简明Python教程 ...

  5. 笔记|《简明Python教程》:编程小白的第一本python入门书

    <简明Python教程>这本书是初级的Python入门教材,初级内容基本覆盖,对高级内容没有做深入纠结.适合刚接触Python的新手,行文比较简洁轻松,读起来也比较顺畅. 下面是我根据各个 ...

  6. 《简明Python教程》学习笔记

    <简明Python教程>是网上比较好的一个Python入门级教程,尽管版本比较老旧,但是其中的基本讲解还是很有实力的. Ch2–安装Python:下载安装完成后,在系统的环境变量里,在Pa ...

  7. 简明Python教程自学笔记——命令行通讯录

    [前言]学习Python已经有一段时间了,相关的书籍资料也下载了不少,但是没有一本完整的看完,也没有编出一个完整的程序.今天下午比较清闲就把<简明Python教程>看了一遍,然后根据书里面 ...

  8. python读书笔记-《简明python教程》上

    1月15日 <简明python教程>上 基本结构: 基础概念+控制流+函数+模块+数据结构+面向对象+I/O+异常+标准库+其他   1.概念 1-0    退出python linux: ...

  9. (原+转)简明 Python 教程:总结

     简明 Python 教程 说明:本文只是对<简明Python教程>的一个总结.请搜索该书查看真正的教程. 第3章 最初的步骤 1. Python是大小写敏感的. 2. 在#符号右面的内容 ...

  10. 【转】简明 Python 教程

    原文网址:http://woodpecker.org.cn/abyteofpython_cn/chinese/ 简明 Python 教程Swaroop, C. H. 著沈洁元  译www.byteof ...

随机推荐

  1. 解决ajax跨域的方法原理详解之Cors方法

    1.神马是跨域(Cross Domain)   对于端口和协议的不同,只能通过后台来解决.   一句话:同一个ip.同一个网络协议.同一个端口,三者都满足就是同一个域,否则就是 跨域问题了.而为什么开 ...

  2. 解决xmapp中Apache端口号占用问题

    [原]解决 "安装xmapp后Apache不能正常启动" 问题 小伙伴们安装xmapp后发现Apache不能正常开启,下面给出了不同情况的解决办法,可以分为以下几种情况分析问题: ...

  3. js函数的使用

                           js函数应用   [函数的声明及调用]: 1.函数声明:    function 函数名(参数1,参数2,·····){    //函数体    retu ...

  4. .NET面试题系列[16] - 多线程概念(1)

    .NET面试题系列目录 这篇文章主要是各个百科中的一些摘抄,简述了进程和线程的来源,为什么出现了进程和线程. 操作系统层面中进程和线程的实现 操作系统发展史 直到20世纪50年代中期,还没出现操作系统 ...

  5. web乱码解决了

    web容易乱码,最近有乱码了,透死了! 搞了半天,终于好了: String comment = new String(request.getParameter("comment") ...

  6. 【JAVAWEB学习笔记】16_session&cookie

    会话技术Cookie&Session 学习目标 案例一.记录用户的上次访问时间---cookie 案例二.实现验证码的校验----session 一.会话技术简介 1.存储客户端的状态 由一个 ...

  7. idea 控制台输出 中文乱码 解决方法

    使用intellij idea 14.1时,console 会输出中文乱码.下面分两种情况解决这种问题:一种是maven构建项目.一种是tomcat(不以maven构建)构建项目. 1.tomcat输 ...

  8. es6之Generator

    1.Generator函数其实是一个封装了多个内部状态的状态机,执行它会返回一个遍历器对象,然后可以依次遍历Generator中的每一个状态,也就是分段执行,yield是暂停执行的标记,next恢复执 ...

  9. 用R语言对一个信用卡数据实现logit,GBM,knn,xgboost

    Prepare the data 数据来自UCIhttp://archive.ics.uci.edu/ml/machine-learning-databases/credit-screening,一个 ...

  10. kafka 自定义分区器

    package cn.xiaojf.kafka.producer; import org.apache.kafka.clients.producer.Partitioner; import org.a ...