2018.12.06

1.对var来说 ,function是个作用域;对let 来说 ,代码块是个作用域;
2.var c;alert© 未给值出现 undefined 若未声明会出错找不到;
3.可以通过将变量的值设置为 null,来清空变量;
4.JS代码上面出错,下面不会显示;
5.局部变量可以访问外部全局;全局变量访问不了内部;
6.基本数据类型,不可绑定属性不可再分;引用类型(object)可以再分,可以绑属性;
7.可以用typeof打印出来判断类型;null属于基本类型 但是 typeof为object
8.计时器:setInterval(function(){},1000【毫秒】) clearInterval()用于取消setInterval()函数设定的定时执行操作 setTimeout(function(){},4000) 一次性计数器
9.有趣的JavaScript隐式类型转换:在使用算术运算符时,运算符两边的数据类型可以是任意的,比如,一个字符串可以和数字相加。 ①字符串和数字相加,JavaScript会自动把数字转换成字符的,不管数字在前还是字符串在前,字符串和数字相加结果是字符串; ②隐藏一些错误,比如,null会转换成0,undefined会转换成NaN。需要注意的是,NaN和NaN是不相等的(这是由于浮点数的精度决定的)
10.在写轮播图往左移的时候,需要重新定义i值遍历方向,并且改变判断条件;清除类名无论倒叙还是正叙都可以实现;
11.用setInterval实现轮播效果鼠标移入移出时轮播跳错(轮播图本身不会跳错,在添加鼠标移入移出的暂停/开始效果时,可以实现第一次移入暂停,但是在移出后轮播图不按设定乱跳。随着移入移出次数增多,乱跳更快。):
原因:setInterval()本身是返回一个新的全局变量,onmouseout绑定的事件是新建了一个定时器,随着事件触发次数增多,定时器越来越多,各按各的时间切换,故造成跳错。
arrImg[x].onmouseout=function(){ setInterval(right,1000) }
解决:鼠标移出,将值重新返回给timer,不产生新的全局变量,所以只有一个定时器,不会再产生跳错的情况。
arrImg[x].onmouseout=function(){ time=setInterval(right,1000) }

猜你喜欢

转载自blog.csdn.net/weixin_43828662/article/details/84992257