javascript由几部分组成?基础知识教程_js知识菜鸟知识

JavaScript有三部分组成。分别为核心(ECMAScript) 、文档对象模型(DOM)、浏览器对象模型(BOM)。这三部分分别描述了该语言的语法和基本对象、处理网页内容的方法和接口、与浏览器进行交互的方法和接口。一.ECMAScript(核心)注意:1、ECMAScript与Web浏览器没有依赖关系,浏览器只是ECMAScript实现的宿主环境之一2

javascript由几部分组成?基础知识教程

JavaScript有三部分组成。分别为核心(ECMAScript) 、文档对象模型(DOM)、浏览器对象模型(BOM)。这三部分分别描述了该语言的语法和基本对象、处理网页内容的方法和接口、与浏览器进行交互的方法和接口。

javascript由几部分组成?基础知识教程_js知识菜鸟知识

一.ECMAScript(核心)

注意:

1、ECMAScript与Web浏览器没有依赖关系,浏览器只是ECMAScript实现的宿主环境之一

2、定义的仅仅是语言基础,比如一些语法,类型,语句,关键字,保留字,操作符,对象…

3、宿主环境提供了该语言的基本实现和扩展,比如DOM

4、其他宿主环境

Node:服务器端的JavaScript平台

Adobe Flash

二、DOM(文档对象模型)
1、功能

(1) 把整个页面映射成为一个多层节点结构

(2) 然后提供了一套对这些节点(内容)增删改查的方法

2、DOM级别

(1)DOM1

  • DOM Core 如何映射基于XML的文档结构

  • DOM HTML 添加了针对HTML的对象和方法

(2)DOM2

扩充了鼠标和用户界面事件, 范围,遍历等细分模块,通过对象接口增加了对CSS的支持。

具体如下:

  • DOM视图:定义了跟踪不同文档视图的接口

  • DOM事件:定义了事件和事件处理的接口

  • DOM样式:定义了基于CSS, 操作元素样式的接口

  • DOM遍历和范围:a.定义了遍历和操作文档树的接口b.新增了验证文档的方法

(3)DOM3

引入了以统一方式加载和保存文档的方法

3、注意

针对于XML但经过扩展,用于HTML的应用程序编程接口(API),不只是针对于JavaScript的, 很多其他语言也实现了DOM。

三.BOM(浏览器对象模型)

1、作用

  • 处理浏览器窗口和框架

  • 针对于浏览器操作的JS扩展

2、具体功能

  • 弹出新浏览器窗口的功能

  • 移动,缩放和关闭浏览器窗口的功能

  • 提供浏览器详细信息的navigator对象

  • 提供浏览器所加载页面的详细信息的location对象

  • 提供用户显示器分辨率详细信息的screen对象

  • 对cookie的支持

  • XMLHttpRequest — ActiveXObject

海计划公众号
(1)
上一篇 2020/03/22 08:49
下一篇 2020/03/22 08:49

您可能感兴趣的内容

  • AnySlider:适用于任何Html内容的jQuery Slider插件零基础入门_插件基础入门

    任何Slider都是一个易于使用且支持触摸的jQuery插件,允许您为任何html内容创建可自定义的滑块,如图像,文本,视频等。特征:重量轻,易于使用支持键盘导航使用淡入淡出或幻灯片过渡以及自定义缓动支持自动播放有很多选项可以自定义您自己的滑块基本用法:1.标记html结构
    <

    2020/03/24
  • 小程序Canvas性能优化实战小白入门_性能使用教程

    需求:在小程序中使用canvas组件绘制地铁图,地铁图包括地铁线路、站点图标、线及站点名称文字,绘制元素为线、圆、图片、文字。 支持拖动平移和双指缩放。问题:小程序中的canvas性能有限,特别在交互的过程中不断触发重绘会引发严重卡顿。基本实现在不考虑优化的情况下,先说说如何实现绘制和交互。数据格式首先看看数据,服务返回的数据中每个元素都是独立的,包括该元素

    2020/03/21
  • CodeMirror小白帮助_浏览器中的代码编辑器

    CodeMirror小白帮助 官方网址:http://codemirror.net/ GitHub:https://github.com/codemirror/CodeMirror…

    2020/03/06
  • js实现数组随机排序菜鸟教程下载_随机小白攻略

    方法一:遍历当前数组,并创建一个暂存容器,每次遍历时,出现一个随机索引,使用随机索引,获取数组中一个随机的值,取出到暂存容器,然后根据当前循环次数的索引,获取数组中的值,放入原来取出的地方,最后把暂存容器的值,赋值给当前循环次数的索引的值,实现随机排序;(即三个容器间的交互)var arr = [1,2,3,4,5,6,7,8,9,10];
    function

    2020/03/23
  • handlebars.js菜鸟指南一个Javascript客户端的模板引擎(它也能用于服务器端)

    handlebars.js基础入门 官方网址:http://handlebarsjs.com/ GitHub:https://github.com/wycats/handlebar…

    2020/03/05
  • CSS3 渐变(Gradients)小白帮助_渐变基础入门

    1:基本概念在两个或者多个指定的颜色之间显示平稳的过渡渐变的效果是由浏览器生成的渐变的类型主要分为两种:线性渐变(Linear Gradients)和径向渐变(Radial Gradients);线性渐变是一个向上、向下、向左、向右或者对角方向的渐变,而径向渐变则是由它们的中心定义。作为元素的background-image(background)使用2:浏

    2020/03/29
  • IconToucan基础入门可以拖拽选择,批量下载免费小图标网站

    IconToucan基础入门 官方网址:http://icontoucan.com/ 简介描述:可以拖拽选择,批量下载免费小图标网站 IconToucan:免费ICON图标素材分享…

    2020/03/05
  • 前端必知的Emmet实用操作,大致了解了下Emmet这个神器使用攻略_神器基础入门

    这是一篇介绍Emmet的文章,Emmet是专为我们前端开发人员设计的一个工具,可以大大提高您的HTML和CSS工开发效率。可以说是前端开发的神器之一Emmet简介作为一个前端,你肯知道在前端开发的过程中,一大部分的工作是写 HTML、CSS 代码。特别是手动编写 HTML 代码的时候,效率会特别低下,因为需要敲打很多尖括号,而且很多标签都需要闭合标签等。于是

    2020/04/06
  • JS获取当前月的最后一天入门指南_日期入门百科

    为了更好的讲这节的内容,提示一个 JS 处理日期的小技巧,想获取上个月最后一天,只需要设置SetDate参数为0即可。var endDate = new Date();
    //上个月最后一天
    endDate.setDate(0);接着正文开始:使用 JS 获取当前月的最后一天,咱们通常的思路先获取下个月的第一天,然后在减去一天,就是当前月的最后一天,所以自然会

    2020/03/26
  • 理解Js原型和原型链小白攻略_原型菜鸟攻略

    在讲原型之前我们先来了解一下函数。在JS中,函数的本质就是对象,它与其他对象不同的是,创建它的构造函数与创建其他对象的构造函数不一样。那产生函数对象的构造函数是什么呢?是一个叫做Function的特殊函数,通过new Function 产生的对象就是一个函数。function f1() {}
    //上面的函数等同于:
    var f1 = new Function

    2020/03/30
  • Web 应用的内存优化菜鸟知识_内存基础入门

    随着 Web 应用复杂程度越来越高,以及 NodeJS 大规模投入生产环境,许多 Web 应用都会长时间运行, JavaScript 的内存管理显得更为重要。JavaScript 具备自动回收垃圾的机制, 执行环境会负责管理代码在执行环境过程中使用的内存,将某些不再被使用的的变量所占用的内存释放掉,正因如此,大多数情况我们在前端开发的时候,并不是那么关注我们

    2020/03/29
  • Js怎么清除cookie?基础入门_cookie使用教程

    当web服务器向浏览器发送网页后,连接被关闭,服务器会忘记用户的一切。Cookie是为了解决“如何记住用户信息”而发明的。有时为了我们的信息安全需要清除Cookie,我们该如何做呢?javascript清除cookie的方法:使用JavaScript清理Cookie首先要找到该Cookie对应的Name对应的值,然后设置其为过期:找到Cookie有下面方法:

    2020/03/22
  • 一个指令为各大vue组件库的table组件加上动态编辑功能入门基础_指令指南攻略

    一个指令为各大vue组件库的table组件加上动态编辑功能入门基础 写在前面 在现代的vue组件库上实现表格编辑其实不难,它们大都提供了作用域插槽,可以在插槽内插入input组件来…

    2020/03/19
  • display: none;与visibility: hidden;的区别菜鸟教程下载_display入门基础知识

    联系:它们都能让元素不可见。区别:display:none;会让元素完全从渲染树中消失,渲染的时候不占据任何空间;visibility: hidden;不会让元素从渲染树消失,渲染师元素继续占据空间,只是内容不可见display: none;是非继承属性,子孙节点消失由于元素从渲染树消失造成,通过修改子孙节点属性无法显示;visibility: hidden

    2020/04/05
  • prefetch入门基础HTML5的页面资源预加载技术(Link prefetch)加速页面加载_预加载菜鸟教程

    不管是浏览器的开发者还是普通web应用的开发者,他们都在做一个共同的努力:让Web浏览有更快的速度感觉。有很多已知的技术都可以让你的网站速度变得更快:使用CSS sprites,使用图片优化工具,使用.htaccess设置页面头信息和缓存时间,JavaScript压缩,使用CDN等。我曾经介绍过本站上使用的一些速度优化技术。而在HTML5里,出现了一个新的用

    2020/04/03
  • minigrid教程视频最小的响应式动态网格瀑布流布局js插件

    minigrid基础入门 官方网址:http://minigrid.js.org/ GitHub:https://github.com/henriquea/minigrid 简介描…

    2020/03/05