cookie与storage的区别以及DOM

92 阅读2分钟

cookie与storage的区别

(1)出现时间

cookie:js出现时就有了

storage:有H5之后才有

(2)存储大小

cookie:4kb

storage:20mb

(3)前后端交互

cookie:交互时请求默认携带

storage:交互时请求不会携带,除非前端人员配置

(4)前后端操作

cookie:前后端语言都能操作

storage:只能用前端操作

(5)过期时间

cookie:默认会话级,页面关闭,存储消失,可以通过手动配置

storage:不能通过手动配置

localStorage 与 sessionStorage 的区别

过期时间:

localStorage: 永久存储, 除非手动清理

sessionStorage: 会话级别, 关闭页面, 存储就失效

DOM

含义:对页面删除一个节点或者增加一个节点

对某一个节点添加一个class类名或者删除某一个节点的类名

获取非常规DOM

非常规DOM(HTML,head,body)

HTML语法:document.documentElement

head语法:document.head

HTML语法:document.body

获取常规DOM

JS在获取常规元素可以通过类名,标签名,ID名

通过类名:

语法:document.getElementsByClassName('类名')

得到的值是一个伪数组,想要获取到某一个元素可以通过下标

伪数组: 长得和数组类似, 有下标有length, 但是没有数组的常用方法

通过标签名:

语法:document.getElementsByTagName('标签名')

得到的值也是一个伪数组,想要获取到某一个元素可以通过下标

通过ID名:

语法:document.getElementById('ID名')

因为ID都是独一无二的,所以这里得到的是一个标签,不是一个伪数组

第二种获取方式:

按照选择器的形式,获取标签满足条件的第一个:

语法:document.querySelector('类名/标签/ID名')

按照选择器的形式,获取所有满足条件的标签:

语法:document.querySelectorAll('类名/标签/ID名')

innerHTML与innerText

innerHTML:获取到标签内部的文本与HTML结构,赋值时会识别字符串中

的html结构,如果有实际的标签, 会把它当成标签渲染到页面上

innerText: 只会获取到页面结构的文本内容, HTML结构会被忽略掉,赋

值时不会识别字符串中的html结构,如果有实际的标签,会把它当成字符串

渲染到页面上

元素属性的获取设置与移除

(1)获取元素的某些元素

语法: 元素.getAttribute('要查询的属性名')

(2)设置元素的某些属性

语法: 元素.setAttribute('要设置的属性名', '要设置的属性值')

(3)移除元素的某个属性

语法: 元素.removeAttribute('要移除的属性名')

H5自定义属性

获取语法: 元素.dataset.属性名

设置语法:元素.dataset.属性名 = ''
(标签中实际拥有,做修改操作,标签中没有,做新增操作)

删除语法:delete 元素.dataset.属性名