-
javascript的typeof返回哪些数据类型
object number function boolean undefined string
-
数组方法pop() push() unshift() shift()
Push()尾部添加 pop()尾部删除
Unshift()头部添加 shift()头部删除 -
事件处理:
事件类型(event type);
事件目标(event target)是发生的事件或与之相关的对象
事件处理程序(event handler)或事件监听程序(event listener)是处理或响应事件的函数。
事件对象(event object)是与特定事件相关切包含有关该事件详细信息的对象。事件对象作为参数传递给事件处理程序函数(不包括IE8及之前版本,在这些浏览器中需要通过window.event来获取)。所有事件对象都有用来制定事件类型的type属性和指定时间目标的target属性(IE8之前的版本中用srcElement来获取)。
事件传播(event propagation)是浏览器决定哪个对象触发其事件处理程序的过程。对于某个对象的特定事件(比如Window对象的load事件),必须是不能传播的。事件传播有两种方式:事件冒泡(bubble)和事件捕获(evnet capturing)。
focus和blur事件不会冒泡,其他所有表单事件都可以。3级DOM事件规范标准化了focusin和focusout来代替它们(但是firefox貌似都不支持)。 -
事件绑定和普通事件有什么区别
假设有个对象obj1,用on+event绑定事件如下:
obj1.onclick=function1; obj1.onclick=function2;
这里的onclick是作为obj1的属性绑定事件,function1会被function2覆盖而只执行function2;
因此取消绑定事件只需:obj1.onclick=null;
在支持W3C标准的浏览器中绑定事件用的是addEventListener:
obj1.addEventListener("click",change1,false); obj1.addEventListener("click",change2,false);
事件执行顺序跟绑定顺序一样,先执行change1,再执行change2
事件取消绑定:obj1.removeEventListener("click",change1,false);
另外在IE里面,绑定事件要用attachEvent绑定:
obj1.attachEvent("onclick",change1); obj1.attachEvent("onclick",change2);
事件取消绑定:
obj1.detachEvent("onclick",change1);
绑定是事件名称同样要以on为前缀,而且没有后面是否冒泡的boolean值,但是这种执行顺序变了,前面那种方法是依次,这种就是倒序,先执行change2,再执行change1.
-
call和apply的区别
Object.call(this,obj1,obj2,obj3) Object.apply(this,arguments)
-
ajax请求时,如何解释json数据
使用
eval,parse
,鉴于安全性考虑 使用parse
更靠谱 -
事件委托是什么
让利用事件冒泡的原理,让自己的所触发的事件,让他的父元素代替执行!
-
解释jsonp的原理,以及为什么不是真正的ajax
动态创建script标签,回调函数
Ajax是页面无刷新请求数据操作 -
javascript的本地对象,内置对象和宿主对象
本地对象为array obj regexp等可以new实例化,具体有:
Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError
内置对象为Global Math 等不可以实例化的
宿主为浏览器自带的document,window 等所有非本地对象都是宿主对象(host object),即由 ECMAScript 实现的宿主环境提供的对象。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。