记录最近的一些遇到的前端面试题

HTML部分:
1.问:DOCTYPE是什么。
答:查看w3school的详细解释http://www.w3school.com.cn/ta...:DTD, SGML)

2.问:有哪些行内元素、有哪些块级元素。margin属性是否对行内元素有所作用。
答:块级元素常用的有:<div><p><h1><ul>等; 行内元素: <a><i><span><input><select><button>等。行内元素左右margin可用,上下margin会让整行移动。

3.问:HTML5中INPUT的新类型。
答:color, date, email, number, range, search, tel, url。

4.问:disabled与readonly的区别。
答:readonly只针对input(text / password)和textarea有效,而disabled对于所有的表单元素都有效,包括select, radio, checkbox, button等。表单元素在使用了disabled后,当我们将表单以POST或GET的方式提交的话,这个元素的值不会被传递出去,而readonly会将该值传递出去。详细解释:http://www.nowamagic.net/html...


CSS部分:
1.问:CSS有哪些伪类、伪元素。
答:伪类(:) -> link, visited, hover, active(按照这个顺序), first-child, nth-child(x), lang;
伪元素(::) -> first-letter, first-line, after, before。

2.问:如何深度解释盒模型。


JS部分:
1.问:JavaScript的数据类型有哪些。
答:JavaScript中的变量分为两种,原始值和引用值。原始值指的是原始数据类型的值,比如undefined, null, number, string, boolean类型所表示的值。引用值指的是复合数据类型的值,即Object,Function,Array等。原文链接在此https://segmentfault.com/a/11...

2.问:有关JS的事件流模型。
答:“DOM事件流”:三个阶段:事件捕捉,目标阶段,事件冒泡。
“事件冒泡”:事件开始由最具体的元素接受,然后逐级向上传播
“事件捕捉”:事件由最不具体的节点先接收,然后逐级向下,一直到最具体的


jQuery部分:
1.问:jQuery的事件绑定方式bind, live, delegate, on。
答:用.bind()的代价是非常大的,它会把相同的一个事件处理程序hook到所有匹配的DOM元素上;不要再用.live()了,它已经不再被推荐了,而且还有许多问题;.delegate()会提供很好的方法来提高效率,同时我们可以添加一事件处理方法到动态添加的元素上;我们可以用.on()来代替上述的3种方法。详细解释见http://blog.csdn.net/panfang/...

2.问:如何终止ajax请求。
答:XMLHttpRequest对象的abort方法。


JS算法题汇总:

var a;
alert(typeof a); 
alert(b); 
var undefined;
undefined == null; 
1 == true;   
2 == true;   
0 == false;  
0 == '';     
NaN == NaN;  
[] == false; 
[] == ![];  
var foo = "11"+2-"1";
console.log(foo);
console.log(typeof foo);
var a = new Object();
a.value = 1;
b = a;
b.value = 2;
alert(a.value);

var foo = 1;
function(){
    console.log(foo);
    var foo = 2;
    console.log(foo);
}
for(var i=1;i<=3;i++){
  setTimeout(function(){
      console.log(i);    
  },0);  
};

本文转载于:猿2048➮https://www.mk2048.com/blog/blog.php?id=hh112hhaahj

猜你喜欢

转载自www.cnblogs.com/jlfw/p/12582879.html