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.属性名