alert(033-15);//12,前缀0用在直接量中,表示八进制
alert('033'-15);//18,前缀0用在字符串中,在(隐式)转换将忽略
alert(parseInt('033')-15);//12
function
.apply([thisObj[,argArray]])
function
.call([thisObj[,arg1[, arg2[, [,.argN]]]]])
swith 优先进行类型检测而不会发生类型转换
var obj=new Number(2);
switch(obj){
case 2:alert(2)//不会执行, 2!==new Number(2)
}
在JS中使用DOM属性readOnly是区分大小写的
js使用window.location代替window.location.href
使用parentNode访问父节点
IE不允许对table,tr的innerHTML赋值,也不支持appendChild添加tr对象,可以向table追加一个空行,table.insertRow(-1);
IE | 非IE | |
空白符 | 不支持v,解析成字母v | |
样式 | currentStyle | defaultView.getComputedStyle |
类样式 | getAttribute("className") | getAttribute("class") |
label for属性 | getAttribute("htmlFor") | getAttribute("for") |
指针位置 | event.clientX,clientY | event.pageX,pageY |
可见窗口大小 | document.documentElement.clientWidth,clientHeight | window.innerWidth,innerHeight |
alpha | style.filter="alpha(opacity=80)" | style.opacity="0.8" |
元素尺寸 | style.heigh=number | style.heigh=number+"px" |
float值 | style.styleFloat | style.cssFloat |
插入文本 | innerText="" | textContent="" |
事件源 | event.srcElement | event.target |
键盘值 | event.keyCode | event.which |
事件 | attachEvent,detachEvent | addeventListener,removeEventListener |
js有(?= exp)却没有(?<= exp), 如果使用了后者, 就会报错"Invalid group"
IE8及其以下浏览器在执行string.split(regex)时,会忽略空值(例'1,2,3,'.split(/,/) 返回结果是['1','2','3'],而不是['1','2','3','']),所以会有兼容性问题,使用string.split('')替换