JS DAY05 API 轮播图 定时器 通过DOM获取修改元素属性

107 阅读2分钟

一、 let、var与const

var有变量提升,容易造成变量污染,尽量不用
变量若不改变使用const,const声明时需要赋值
对象和数组是引用类型,存储的是地址,只要对象中的内容改变不会改变地址,一般使用const
基本数据类型的值或者引用类型的地址发生变化需要用
总结:
1.let和const声明的变量时块级作用域,避免了无意中全局变量污染,更加的灵活安全。另一个好处就是在循环语句中,let关键字为每次循环绑定单独绑定一个变量。
2.let和const没有变量提升,提高了代码的可维护性。
3.let和const不可以重复定义变量,修复var可以重复定义变量,使得变量的定义不再随意任性。
4.let和const定义的变量不属于顶层对象。目的也是为了让变量定义更加自由灵活安全。
5.const声明一个常量的时候,一定要赋值。
6.const声明的常量并非真正意义上的常量,只保证变量名指向的地址不变,并不保证该地址的数据不变。

二、API的作用和分类

作用:使用js去操作html和浏览器 分类:DOM(文档对象模型)、BOM(浏览器对象模型) DOM:

image.png

image.png

image.png

三、获取DOM对象

1.根据css选择器获取DOM对象
选择匹配的第一个元素 doucument.querySelector('div' '.box' '#nav' 'ul li:first-child') 小括号中必须加‘’,因为获取的是字符串

image.png

image.png 获取多个是个数组

image.png

image.png

四、修改DOM元素内容

image.png
直接修改文字内容box.innerText = '我是一个盒子',无法解析标签,比如加粗 <strong>

image.png

box.innerHTML='<strong>我是一个盒子<strong>' inner.HTML可以解析标签

五、DOM修改常见元素属性

常用属性

image.png
随机展示一张图片

image.png

操作元素样式属性

1.通过style属性操作css

image.png

生成的是行内样式表,权重比较高,除非内部+important

2.通过classname操作类名操作css

image.png class本身就有点,active不需要再加·

div.classname='div nav'可以既保留之前的又添加样式

使用classname会直接覆盖以前的类名,简洁。

3.通过classList操作控制css

image.png
对象.属性.方法('') image.png
类名不加点,class类型的。追加不需要考虑前面师傅出现了相同的样式类

toggle切换 box.classList.toggle('active') 该属性用来切换,class中有就删掉,没有就加上

六、操作元素表单属性

image.png

image.png

七、自定义属性

image.png

八、定时器-间歇函数

image.png

image.png
setInterval(function(){},1000)function是匿名函数

image.png
变量名n返回的是定时器id

image.png button按钮是一个表单,但是不用btn.value取值,用innerHTML取按钮的文本。
模板字符串`我已经阅读用户协议(${i} )` 加空格便是换行