首页 > 代码库 > js面试小结

js面试小结

1css3transfromtransitionanimation的区别
transfrom描述元素静态样式,而transitionanimation能够实现动画效果,所以一般transfrom配合后两者使用。
结论:
1. 如果要灵活定制多个帧以及循环,用animation.
2. 如果要简单的from to 效果,用 transition.
3. 如果要使用js灵活设定动画属性,用transition.

2ajax工作原理
在用户和服务器之间建立中间层(ajax引擎),让用户操作和服务器响应异步化。

3js闭包
使用闭包主要是为了设计私有的方法和变量。闭包的优点是可以避免全局变量的污染,缺点是闭包会常驻内存,会增大内存使用量,使用不当很容易造成内存泄露。在js中,函数即闭包,只有函数才会产生作用域的概念
闭包有三个特性:
    1.函数嵌套函数
    2.函数内部可以引用外部的参数和变量
    3.参数和变量不会被垃圾回收机制回收

4、怎么循环数组
for循环;我回答for 循环的时候,面试官说这个太早了,不知道他想听的是什么
for each;
jquery中的$.each

5attr()prop()的区别
都是获取/设置属性;
attr()获取/设置DOM元素的属性;
prop()获取j/设置js对象的属性;
举例: 
<input id="chk" type="checkbox" checked="checked" />
$("#chk").prop("checked") == true
$("#chk").attr("checked") == checked

6、什么是事件冒泡[b][/b]在一个对象上触发某个事件,如果此对象定义了此事件的处理程序,则此事件调用这个处理程序,如果没有定义处理程序或者事件返回为false,那么事件会向对象的父级对象传播,从里到外,直到被处理,或者它达到了对象层次的最顶层,即document对象(有的浏览器为window)。

7、事件冒泡作用
允许多个操作被集中处理
让不同对象同时捕捉同一事件

8、什么是阻止冒泡
阻止目标元素事件向父级元素冒泡
阻止冒泡------e.stopPropagation()e.cancelBubble = true(IE)
阻止默认行为--------e.preventDefaulte.returnValue = http://www.mamicode.com/false(IE)
jqueryreturn false既阻止冒泡又阻止默认行为

js面试小结