《JavaScript高级程序设计》笔记二
第二章 在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高级程序设计》笔记二的更多相关文章
- 简明python教程笔记
自然字符串 如果你想要指示某些不需要如转义符那样的特别处理的字符串,那么你需要指定一个自然字符串.自然字符串通过给字符串加上前缀r或R来指定. r"Newlines are indicate ...
- 《简明python教程》笔记一
读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info 安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...
- 学习笔记《简明python教程》
学习笔记<简明python教程> 体会:言简意赅,很适合新手入门 2018年3月14日21:45:59 1.global 语句 在不使用 global 语句的情况下,不可能为一个定义于函数 ...
- 简明Python教程 ~ 随书笔记
本文是阅读<简明Python教程>所做的随书笔记,主要是记录一些自己不熟悉的用法,或者所看到的比较有意思的内容,本书英文版A Byte of Python, 中文译版 简明Python教程 ...
- 笔记|《简明Python教程》:编程小白的第一本python入门书
<简明Python教程>这本书是初级的Python入门教材,初级内容基本覆盖,对高级内容没有做深入纠结.适合刚接触Python的新手,行文比较简洁轻松,读起来也比较顺畅. 下面是我根据各个 ...
- 《简明Python教程》学习笔记
<简明Python教程>是网上比较好的一个Python入门级教程,尽管版本比较老旧,但是其中的基本讲解还是很有实力的. Ch2–安装Python:下载安装完成后,在系统的环境变量里,在Pa ...
- 简明Python教程自学笔记——命令行通讯录
[前言]学习Python已经有一段时间了,相关的书籍资料也下载了不少,但是没有一本完整的看完,也没有编出一个完整的程序.今天下午比较清闲就把<简明Python教程>看了一遍,然后根据书里面 ...
- python读书笔记-《简明python教程》上
1月15日 <简明python教程>上 基本结构: 基础概念+控制流+函数+模块+数据结构+面向对象+I/O+异常+标准库+其他 1.概念 1-0 退出python linux: ...
- (原+转)简明 Python 教程:总结
简明 Python 教程 说明:本文只是对<简明Python教程>的一个总结.请搜索该书查看真正的教程. 第3章 最初的步骤 1. Python是大小写敏感的. 2. 在#符号右面的内容 ...
- 【转】简明 Python 教程
原文网址:http://woodpecker.org.cn/abyteofpython_cn/chinese/ 简明 Python 教程Swaroop, C. H. 著沈洁元 译www.byteof ...
随机推荐
- MySQL ProxySQL读写分离使用初探
目的 在美团点评DBProxy读写分离使用说明文章中已经说明了使用目的,本文介绍ProxySQL的使用方法以及和DBProxy的性能差异.具体的介绍可以看官网的相关说明,并且这个中间件也是percon ...
- ajax返回json数据示例
前端发送请求与接收数据: $.ajax({ type : "post", url : "/queryStudent", ...
- [笔记]cin、cout与scanf、printf的效率差异对比分析
之前上传UVa227 puzzle时,好不容易AC了,但发现自己用时50(ms),而在VJ上看到人家都是40ms.20ms,于是打开一个20ms的代码查看人家强在哪里.但结果研究了半天感觉差不多,于是 ...
- 使用Nginx实现Tomcat集群负载均衡
概述 要解决的问题 环境准备以及问题解决思路 配置 测试 小结 一.概述 使用Nginx主要是来解决高并发情况下的负载均衡问题. 二.要解决的问题 1.最主要是负载均衡请求分发. 2.文件上传功能,只 ...
- C++ 常见的 Undefined symbols for architecture *
出现 Undefined symbols for architecture x86_64: 的原因 1.函数申明了,却未被定义. 2.申明的虚函数未被实现. NOTE: a missing vtabl ...
- 关于微信小程序的Request请求错误处理
在学微信小程序的request请求的时候,一开始报“不在以下合法域名列表中,请参考文”的错误,后来又莫名其妙的报“400 Bad Request”错误,经过半天的研究,终于搞定了,把遇到的错误给大家分 ...
- 使用Linux的alternatives命令替换选择软件的版本
上周在安装搜索引擎Elasticsearch时,要求安装比较新的java 版本,我选择了java 1.8.0,安装java 成功后使用java -version 发现使用的版本仍旧是1.6.0, 查询 ...
- Linux-Zabbix 邮件报警设置
系统环境 Ubuntu 16.04 在Zabbix服务器端 安装sendmail sudo apt install sendmail 测试发送邮件 echo "正文!" | mai ...
- Spring Cloud 客服端负载均衡 Ribbon
一.简介 Spring Cloud Ribbon 是一个基于Http和TCP的客服端负载均衡工具,它是基于Netflix Ribbon实现的.它不像服务注册中心.配置中心.API网关那样独立部署, ...
- pycharm5工具免费分享及安装教程
好东西,就要分享,最近在捣鼓Python,所以就找个pycharm5工具,感觉挺好用的. 废话不多说了,所见即所得: 百度云盘分享:http://pan.baidu.com/s/1sk9k4Nj 密码 ...