1. JS里面NAN!==NAN
2.% 取余可以应用在隔行变色、秒转等
3.真:true、非空(数字、字符串、对象)、ps.空数组也是真
假:false、数字零、空字符串、空对象、undefined
js里dom操作style其实是改变的行间样式。
obj.currentStyle.属性可以获得非行间样式 //IE 只能取单一样式
getComputedStyle(obj,).属性 //chrome ff
需要进行兼容处理,可以封装个函数。
数组
length既可以获取也可以赋值设置,进行数组操作
push(x) 尾部添加 unshift(x)头部添加
pop 尾部删除 shift 头部删除
splice(起始位置,长度)删除元素
splice(起始位置,长度,a,,,)添加、替换
contact(数组)连接数组
join(分隔符) 通常和字符串分割函数 split(分隔符)搭配
sort(x)排序,x非必需,必为函数,a<b,返回负数,a>b返回大于0,相等返回0
定时器:clearTimeout时timer必须先声明,js里函数可以先调用后声名,变量必须先声名再调用
这其中也牵涉到了“变量提升”的概念,其实都可以用绑定到window对象上来理解:在执行JS代码之前,所有的全局变量(包括函数和变量),都会绑定到window对象上,只是函数会包含函数体,变量仅仅是一个undefined。
Dom
创建dom元素:
创建一个节点createElement(标签名) 追加一个节点 父节点.appendChild(节点)
插入元素:
insertBefore(节点,原有节点) 在已有元素前插入
删除元素:
removeChild(节点) 删除一个节点
此处原本oldColor写在鼠标事件外边,表格颜色一直不对,最后才发现循环过程中oldColor一直在不停更换,最后固为最后一行的颜色,并不是和鼠标事件绑定的,所以应该写在事件函数中。