JS总结概要

1.JS事件


主要事件表

2.js内置对象

2.1Date 日期对象

var d = new Date(2012, 10, 1);  //2012年10月1日

var d = new Date('Oct 1, 2012'); //2012年10月1日


Date对象中处理时间和日期的常用方法

2.2String字符串对象

stringObject.length; 返回该字符串的长度

toUpperCase() 方法来将字符串小写字母转换为大写

toLowerCase()方法,将字符串所有大写字母都变成小写的字符串

charAt() 方法可返回指定位置的字符

stringObject.indexOf(substring, startpos)方法可返回某个指定的字符串值在字符串中首次出现的位置,如果要检索的字符串值没有出现,则该方法返回 -1

stringObject.indexOf(substring, startpos)

stringObject.split(separator,limit)方法将字符串分割为字符串数组,并返回此数组。

stringObject.split(separator,limit)

stringObject.substring(starPos,stopPos)方法用于提取字符串中介于两个指定下标之间的字符

stringObject.substring(starPos,stopPos)

stringObject.substr(startPos,length)方法从字符串中提取从 startPos位置开始的指定数目的字符串。

stringObject.substr(startPos,length)

2.3Math对象

Math 对象属性

Math.ceil(x)方法可对一个数进行向上取整。

Math.floor(x)方法可对一个数进行向下取整。

Math.round(x)方法可把一个数字四舍五入为最接近的整数。

Math.random()方法可返回介于 0 ~ 1(大于或等于 0 但小于 1 )之间的一个随机数。

2.4Array数组对象

数组方法

3.BOM浏览器对象模型

3.1window对象

window对象方法

3.2History对象

window.history.length:返回浏览器历史列表中的URL数量

History 对象方法

3.3Location对象

location用于获取或设置窗体的URL,并且可以用于解析URL。

location 对象属性
location对象属性图示:  
location 对象方法

3.4Navigator对象

Navigator 对象包含有关浏览器的信息,通常用于检测浏览器与操作系统的版本。

Navigator 对象属性

3.5screen对象

screen对象用于获取用户的屏幕信息

screen对象属性

4.DOM文档对象模型

4.1节点

遍历节点树
DOM操作

4.2获取节点

获取节点的方法

4.3获取/设置节点的属性

elementNode.getAttribute(name)通过元素节点的属性名称获取属性的值。

elementNode.setAttribute(name,value)方法增加一个指定名称和值的新属性,或者把一个现有的属性设定为指定的值。

4.4节点对象的属性

在文档对象模型 (DOM) 中,每个节点都是一个对象。DOM 节点有三个重要的属性 :


节点的属性

一、nodeName 属性: 节点的名称,是只读的。

1. 元素节点的 nodeName 与标签名相同

2. 属性节点的 nodeName 是属性的名称

3. 文本节点的 nodeName 永远是 #text

4. 文档节点的 nodeName 永远是 #document

二、nodeValue 属性:节点的值

1. 元素节点的 nodeValue 是 undefined 或 null

2. 文本节点的 nodeValue 是文本自身

3. 属性节点的 nodeValue 是属性的值

三、nodeType 属性: 节点的类型,是只读的。以下常用的几种结点类型:

元素类型    节点类型

元素          1

属性          2

文本          3

注释          8

文档          9

4.5访问节点

子节点:

elementNode.childNodes访问选定元素节点下的所有子节点的列表,返回的值可以看作是一个数组,他具有length属性。

node.firstChild返回‘childNodes’数组的第一个子节点,与elementNode.childNodes[0]是同样的效果。

node.lastChild返回‘childNodes’数组的最后一个子节点,与elementNode.childNodes[elementNode.childNodes.length-1]是同样的效果。 

父节点:

elementNode.parentNode获取指定节点的父节点(注意:父节点只能有一个

兄弟节点:

nodeObject.nextSibling可返回某个节点之后紧跟的节点(处于同一树层级中)。

nodeObject.previousSibling 属性可返回某个节点之前紧跟的节点(处于同一树层级中)。

注意: 两个属性获取的是节点。Internet Explorer 会忽略节点间生成的空白文本节点(例如,换行符号),而其它浏览器不会忽略。

解决问题方法:

判断节点nodeType是否为1, 如是为元素节点,跳过。

4.6创建元素节点

document.createElement(tagName)方法可创建元素节点。此方法可返回一个 Element 对象。tagName:字符串值,这个字符串用来指明创建元素的类型。

document.createTextNode(data)方法创建新的文本节点,返回新创建的 Text 节点。data : 字符串值,可规定此节点的文本。

4.7插入节点

appendChild(newnode)在指定节点的最后一个子节点列表之后添加一个新的子节点。

insertBefore(newnode,node)方法可在已有的子节点前插入一个新的子节点。newnode:要插入的新节点。node:可选,指定此节点前插入节点。

4.8删除节点

nodeObject.removeChild(node)方法从子节点列表中删除某个节点。如删除成功,此方法可返回被删除的节点,如失败,则返回 NULL。node :必需,指定需要删除的节点。

4.9替换节点

node.replaceChild (newnode,oldnew ) 实现子节点(对象)的替换。返回被替换对象的引用。newnode : 必需,用于替换 oldnew 的对象。 oldnew : 必需,被 newnode 替换的对象。

4.10浏览器窗口可视区域大小

获得浏览器窗口的尺寸(浏览器的视口,不包括工具栏和滚动条)的方法:

一、对于IE9+、Chrome、Firefox、Opera 以及 Safari:

•  window.innerHeight - 浏览器窗口的内部高度

•  window.innerWidth - 浏览器窗口的内部宽度

二、对于 Internet Explorer 8、7、6、5:

•  document.documentElement.clientHeight表示HTML文档所在窗口的当前高度。

•  document.documentElement.clientWidth表示HTML文档所在窗口的当前宽度。

或者

Document对象的body属性对应HTML文档的<body>标签

•  document.body.clientHeight

•  document.body.clientWidth

在不同浏览器都实用的 JavaScript 方案:

var w= document.documentElement.clientWidth || document.body.clientWidth;

var h= document.documentElement.clientHeight|| document.body.clientHeight;

4.11网页尺寸scrollHeight

scrollHeight和scrollWidth,获取网页内容高度和宽度(不包括滚动条)。

一、针对IE、Opera:

scrollHeight 是网页内容实际高度,可以小于 clientHeight。

二、针对NS、FF:

scrollHeight 是网页内容高度,不过最小值是 clientHeight。也就是说网页内容实际高度小于 clientHeight 时,scrollHeight 返回 clientHeight 。

三、浏览器兼容性

var w=document.documentElement.scrollWidth || document.body.scrollWidth;

var h=document.documentElement.scrollHeight || document.body.scrollHeight;

注意:区分大小写

scrollHeight和scrollWidth还可获取Dom元素中内容实际占用的高度和宽度。

4.12网页尺寸offsetHeight

offsetHeight和offsetWidth,获取网页内容高度和宽度(包括滚动条等边线,会随窗口的显示大小改变)。

一、值

offsetHeight = clientHeight + 滚动条 + 边框。

二、浏览器兼容性

var w= document.documentElement.offsetWidth || document.body.offsetWidth;

var h= document.documentElement.offsetHeight || document.body.offsetHeight;

4.13 网页卷去的距离

scrollLeft:设置或获取位于给定对象左边界与窗口中目前可见内容的最左端之间的距离 ,即左边灰色的内容。

scrollTop:设置或获取位于对象最顶端与窗口中可见内容的最顶端之间的距离 ,即上边灰色的内容。

offsetLeft:获取指定对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置 。

offsetTop:获取指定对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置 。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,772评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,458评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,610评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,640评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,657评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,590评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,962评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,631评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,870评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,611评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,704评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,386评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,969评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,944评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,179评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,742评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,440评论 2 342

推荐阅读更多精彩内容

  • 一、JS前言 (1)认识JS 也许你已经了解HTML标记(也称为结构),知道了CSS样式(也称为表示),会使用HT...
    凛0_0阅读 2,752评论 0 8
  •   DOM 1 级主要定义的是 HTML 和 XML 文档的底层结构。   DOM2 和 DOM3 级则在这个结构...
    霜天晓阅读 1,416评论 1 3
  • 一、事件 JavaScript 创建动态页面。事件是可以被 JavaScript 侦测到的行为。 网页中的每个元素...
    大嘴蝸牛阅读 636评论 0 2
  • 变量命名、声明、赋值 1.必须以字母、下划线或美元符号开头,后面可以跟字母、下划线、美元符号和数字。2.变量名区分...
    wq04200阅读 618评论 0 1
  • 个人博客:https://yeaseonzhang.github.io 花了半个多月的时间,终于又把“JS红宝书”...
    Yeaseon阅读 11,470评论 9 52