类数组转数组
- 不考虑兼容性Array.prototype.slice.call()
- 考虑IE兼容 HTMLCollection、NodeList
newArr = [];
while(i)
arr[--i] = arr[i]
类型判断
- type/instanceof
- toString(不考虑鸭子类型)
- 判断数组
typeof arr.sort == 'function'
arr.constructor == 'array'
'splice' in arr
- 判断window对象
- toString (不同版本浏览器不同)
- window == document //ie678 true
- document == window //ie678 false
- 判断类数组
- 有length
- type function/array
- {}.propertyIsEnumerable 判断是否可遍历属性
domReady机制
- API判断 onReadyStateChange
- 为了解决IE死链,document.wirte 一个标签,在创建的标签上 onReadyStateChange后重新初始化.
- firefox 上没有这个API
function checkScoll(){
try{
html.onScoll('left');
onload()
} catch(e) {
settimeout(checkScoll)
}
}