JavaScript学习心得之概述


Posted in Javascript onJanuary 20, 2015

  一、JavaScript是一种专为与网页交互而设计的脚本语言,它的的组成

ECMAScript(核心) DOM(文档对象模型) BOM(浏览器对象模型)

1.1ECMAScript

     ECMA-262定义的ECMAScrip与Web浏览器没有依赖关系,ECMA-262定义的只是这门语言的基础,提供核心语言功能

ECMAScript是通过ECMA-262标准化的脚本语言,ECMA-262规定语言的:语法、类型、语句、关键字、保留字、操作符、对象

1.2 DOM(Document Object Modle)
     DOM是针对XML但是经过扩展用于HTML的应用程序编程接口(API,Application Programming Interface),提供访问和操作网页内容的方法和接口

DOM把整个页面映射为一个多层节点结构,HTML或者XML等页面中的每个组成部分都是某种类型的节点,这些节点又包含不同类型的数据。

1.3 BOM(Bower Object Modle)

控制浏览器显示的页面以外的部分,BOM只处理浏览器窗口和框架,提供与浏览器交互的方法和接口

二、<script>元素
2.1引用javascript文件
 外部引用javascript文件:

<script type="text/javascript" src="../../XX.js"></script>

页面嵌入javascript代码

<script type="text/javascript">
//javascript代码
</script>

包含在<script>元素内部的JavaScript代码将被从上至下依次解释

2.2 <script>元素的属性

defer延迟脚本:告诉浏览器立即下载,脚本会被延迟到整个页面都被解析完才执行, defer只适用于外部引入的脚本文件

<!DOCTYPE html>

<html>

    <head>

         <script type="text/javascript" defer="defer" src="example.js"></script>

    </head>

</html>

虽然<script>标签位于<head>标签内,但是demo.js会延迟到浏览器遇到</html>后才执行。

async异步脚本:必让页面等待脚本的下载和执行,从而异步加载页面其他内容
同defer一样只适用于外部引入的脚本文件,async告诉浏览器立即下载文件,但与defer不同的是标记不async脚本并不保证按照指定它们的先后顺序执行,建议异步脚本不要在加载期间修改DOM

<!--异步脚本-->

<script type="text/javascript" async="async" src="example1.js"></script>

<script type="text/javascript" async="async" src="example2.js"></script>

2.3 <noscript>元素的属性

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>test</title>

<!--延迟脚本-->

<scripttype="text/javascript" defer="defer" src="example.js"></script>

<!--导部脚本-->

<script type="text/javascript" async="async" src="example1.js"></script>

<script type="text/javascript" async="async" src="example2.js"></script>

</head>

<body>

   <noscript>

    <p>本页显示需要浏览器支持(启用)Javascript

      </noscript>

</body>

</html>

浏览器不支持脚本

浏览器支持脚本,但脚本被禁用,浏览器就会显示<noscript>中的内容
这个页面会在脚本无效的情况下,向用户显示一条信息,而在启用了脚本的浏览器中,用户永远也不会看到它

以上就是本文的全部内容了,希望大家能够喜欢,本系列将持续更新。

Javascript 相关文章推荐
javascript开发随笔一 preventDefault的必要
Nov 25 Javascript
关于IE BUG与字符串截取substr的解决办法
Apr 10 Javascript
JS图片根据鼠标滚动延时加载的实例代码
Jul 13 Javascript
js取整数、取余数的方法
May 11 Javascript
javascript设置文本框光标的方法实例小结
Nov 04 Javascript
js addDqmForPP给标签内属性值加上双引号的函数
Dec 24 Javascript
js实现类bootstrap模态框动画
Feb 07 Javascript
微信小程序 页面跳转及数据传递详解
Mar 14 Javascript
JS异步执行结果获取的3种解决方式
Feb 19 Javascript
JavaScript表格隔行变色和Tab标签页特效示例【附jQuery版】
Jul 11 jQuery
Windows上node.js的多版本管理工具用法实例分析
Nov 06 Javascript
JavaScript实现页面动态验证码的实现示例
Mar 23 Javascript
DOM基础教程之使用DOM
Jan 19 #Javascript
DOM基础教程之模型中的模型节点
Jan 19 #Javascript
javascript正则表达式使用replace()替换手机号的方法
Jan 19 #Javascript
javascript正则表达式之search()用法实例
Jan 19 #Javascript
jQuery中delegate()方法用法实例
Jan 19 #Javascript
jQuery中die()方法用法实例
Jan 19 #Javascript
jQuery中live()方法用法实例
Jan 19 #Javascript
You might like
先进的自动咖啡技术,真的可以取代咖啡师吗?
2021/03/06 冲泡冲煮
模仿OSO的论坛(五)
2006/10/09 PHP
php模拟用户自动在qq空间发表文章的方法
2015/01/07 PHP
总结对比php中的多种序列化
2016/08/28 PHP
一些有关检查数据的JS代码
2006/09/07 Javascript
XHTML下,JS浮动代码失效的问题
2009/11/12 Javascript
Javascript和Ajax中文乱码吐血版解决方案
2009/12/21 Javascript
js原生态函数中使用jQuery中的 $(this)无效的解决方法
2011/05/25 Javascript
使用javascript:将其它类型值转换成布尔类型值的解决方法详解
2013/05/07 Javascript
JavaScript获取XML数据附示例截图
2014/03/05 Javascript
jquery实现键盘左右翻页特效
2015/04/30 Javascript
js插件Jcrop自定义截取图片功能
2016/10/14 Javascript
微信小程序网络请求封装示例
2018/07/24 Javascript
解决vue单页路由跳转后scrollTop的问题
2018/09/03 Javascript
JS异步处理的进化史深入讲解
2019/08/25 Javascript
js实现无限瀑布流实例方法
2019/09/16 Javascript
Vue使用JSEncrypt实现rsa加密及挂载方法
2020/02/07 Javascript
JavaScript实现沿五角星形线摆动的小圆实例详解
2020/07/28 Javascript
Vue获取微博授权URL代码实例
2020/11/04 Javascript
Python的socket模块源码中的一些实现要点分析
2016/06/06 Python
解决Django模板无法使用perms变量问题的方法
2017/09/10 Python
Scrapy框架爬取Boss直聘网Python职位信息的源码
2019/02/22 Python
Python将列表中的元素转化为数字并排序的示例
2019/12/25 Python
Python实现区域填充的示例代码
2021/02/03 Python
北美大型运动类产品商城:Champs Sports
2017/01/12 全球购物
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
犹他州最古老的体育用品公司:Al’s
2020/12/18 全球购物
Linux内核的同步机制是什么?主要有哪几种内核锁
2013/01/03 面试题
物流仓储计划书
2014/01/10 职场文书
酒店总经理助理职责
2014/02/12 职场文书
厂区绿化方案
2014/05/08 职场文书
药品营销策划方案
2014/06/15 职场文书
横幅标语大全
2014/06/17 职场文书
教育专业毕业生推荐信
2014/07/10 职场文书
致毕业季:你如何做好自己的职业生涯规划书?
2019/07/01 职场文书
golang生成并解析JSON
2022/04/14 Golang