`
MirrorAvatar
  • 浏览: 47942 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

前端开发面试笔试知识小结

阅读更多

参考:前端开发面试题

前端综合

1. 对Web标准的理解

Web标准是一系列标准的集合:结构标准(XHTML/HTML)、表现标准(CSS)和行为标准(ECMAScript/DOM/BOM)。还有这些代码的书写标准。

要实现的Web标准是:结构化文档;内容、表现和行为三者间的分离。

2. 浏览器内核差异

IE浏览器的内核Trident、Mozilla的Gecko、Chrome的Blink(WebKit的分支)、Opera内核原为Presto,现为Blink。

HTML

1. HTML的<!DOCTYPE>,所谓的“严格模式”和“混杂模式”
(1)<!DOCTYPE> 声明位于文档中的最前面,处于 <html> 标签之前。告知浏览器的解析器,用什么文档类型 规范来解析这个文档。

(2)严格模式的排版和JS运作模式是以该浏览器支持的最高标准运行。

(3)在混杂模式中,页面以宽松的向后兼容的方式显示。模拟老式浏览器的行为以防止站点无法工作。

(4)DOCTYPE不存在或格式不正确会导致文档以混杂模式呈现。
2.<link> 和@import 的区别
(1)<link>属于XHTML标签,而@import是CSS提供的;

(2)页面被加载的时,<link>会同时被加载,而@import引用的CSS会等到页面被加载完再加载;

(3)import只在IE5以上才能识别,而<link>是XHTML标签,无兼容问题;

(4)<link>方式的样式的权重 高于@import的权重。
3.块级元素、行内元素、空(void)元素有哪些?
(1)块级元素。默认display属性是block。div ul ol li dl dt dd h1 h2 h3 h4…p。

(2)行内元素。默认display属性是inline。a b span img input select strong。

(3)空元素。功能性元素,标签可以不闭合。<br> <hr> <img> <input> <link> <meta>
4.常见的HTML浏览器兼容性问题
(1)获取标签的自定义属性。
    IE下,可以使用获取常规属性的方法来获取自定义属性,也可以使用getAttribute()获取自定义属性;Firefox下,只能使用getAttribute()获取自定义属性。
    解决方法:统一通过getAttribute()获取自定义属性。
(2)even对象。
    IE下,even对象有x,y属性,但是没有pageX,pageY属性;Firefox下,event对象有pageX,pageY属性,但是没有x,y属性。
    解决方法:var x = (event.x ? event.x : event.pageX)
5.HTML语义化
(1)用正确的标签做正确的事情!
(2)html语义化就是让页面的内容结构化,便于对浏览器、搜索引擎解析;
(3)在没有样式CSS情况下也以一种文档格式显示,并且是容易阅读的。
(4)搜索引擎的爬虫依赖于标记来确定上下文和各个关键字的权重,利于 SEO。
(5)使阅读源代码的人对网站更容易将网站分块,便于阅读维护理解。
6.iframe的缺点
(1)iframe会阻塞主页面的Onload事件;
(2)iframe和主页面共享连接池,而浏览器对相同域的连接有限制,所以会影响页面的并行加载。
解决方法:使用iframe之前需要考虑这两个缺点。如果需要使用iframe,最好是通过javascript动态给iframe添加src属性值,这样可以可以绕开以上两个问题。

HTML5

1.HTML5的离线储存
localStorage    长期存储数据,浏览器关闭后数据不丢失;
sessionStorage  数据在浏览器关闭后自动删除。
2.cookies,sessionStorage 和 localStorage 的区别
(1)cookie在浏览器和服务器间来回传递, sessionStorage和localStorage不会。
(2)sessionStorage和localStorage的存储空间更大。
(3)sessionStorage和localStorage有更多丰富易用的接口。
(4)sessionStorage和localStorage各自独立的存储空间。
3.如何实现浏览器内多个标签页之间的通信? (阿里)
调用localstorge、cookies等本地存储方式
4.webSocket如何兼容低浏览器?(阿里)
Adobe Flash Socket 、 ActiveX HTMLFile (IE) 、 基于 multipart 编码发送 XHR 、 基于长轮询的 XHR

CSS

1. 布局
Table布局,Div+CSS布局,响应式设计。
2. 盒子模型

盒子模型

(1)有两种, IE 盒子模型、标准 W3C 盒子模型;IE的content部分包含了 border 和 pading;
(2)盒模型: 内容(content)、填充(padding)、边界(margin)、 边框(border).
3.选择器优先级及使用
1.id选择器( # myid)
2.类选择器(.myclassname)
3.标签选择器(div, h1, p)
4.相邻选择器(h1 + p)
5.子选择器(div > p)(选择父元素为 <div> 元素的所有 <p> 元素。)
6.后代选择器(li a)
7.通配符选择器( * )
8.属性选择器(a[rel = "external"])
9.伪类选择器(a: hover, li: nth - child)

优先级:
1.!important >  id > class > tag
2.important 比 内联优先级高
4. CSS3新特性
CSS3实现圆角(border-radius:8px),阴影(box-shadow:10px),对文字加特效(text-shadow、),线性渐变(gradient),旋转(transform)、
缩放scale(0.85,0.90),定位translate(0px,-30px),倾斜skew(-9deg,0deg)
增加了更多的CSS选择器  多背景 rgba
5.CSS定义的权重
标签的权重为1,class的权重为10,id的权重为100。
/*权重为100+1=101*/
#id1 div{
}
/*权重为10+1=11*/
.class1 div{
}
/*权重为10+10+1=21*/
.class1 .class2 div{
}
6.如果需要手动写动画,你认为最小时间间隔是多久,为什么?(阿里)
多数显示器默认频率是60Hz,即1秒刷新60次,所以理论上最小间隔为1/60*1000ms = 16.7ms
7.去除display:inline-block显示间隙?(携程)
移除空格、使用margin负值、使用font-size:0、letter-spacing、word-spacing
8.CSS的浏览器兼容性
Chrome 中文界面下默认会将小于 12px 的文本强制按照 12px 显示,可通过加入 CSS 属性 -webkit-text-size-adjust: none; 解决。
浏览器默认的margin和padding不同。解决方案是加一个全局的*{margin:0;padding:0;}来统一。

JavaScript:

1.Node.js的适用场景?
高并发、聊天、实时消息推送
2Javascript如何实现继承?
通过原型和构造器
3.This对象的理解
this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。

但是有一个总原则,那就是this指的是调用函数的那个对象。

this一般情况下:是全局对象Global。 作为方法调用,那么this就是指这个对象
4.如何判断一个对象是否属于某个类?
使用instanceof (待完善)

if(a instanceof Person){
   alert('yes');
}
5.new操作符具体干了什么呢?
 1、创建一个空对象,并且 this 变量引用该对象,同时还继承了该函数的原型。
 2、属性和方法被加入到 this 引用的对象中。
 3、新创建的对象由 this 所引用,并且最后隐式的返回 this 。

var obj  = {};
obj.__proto__ = Base.prototype;
Base.call(obj);
6.Javascript中,有一个函数,执行时对象查找时,永远不会去查找原型,这个函数是?
hasOwnProperty
7.JSON 的了解?
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。
它是基于JavaScript的一个子集。数据格式简单, 易于读写, 占用带宽小
{'age':'12', 'name':'back'}
8.如何解决跨域问题?
jsonp、 iframe、window.name、window.postMessage、服务器上设置代理页面
9.模块化怎么做?
立即执行函数,不暴露私有成员
var module1 = (function(){
    var _count = 0;
    var m1 = function(){
      //...
    };
    var m2 = function(){
      //...
    };
    return {
      m1 : m1,
      m2 : m2
    };
  })();
10.documen.write和 innerHTML的区别
document.write只能重绘整个页面
innerHTML可以重绘页面的一部分
11.call, apply方法区别
call, apply方法区别是,从第二个参数起, call方法参数将依次传递给借用的方法作参数, 而apply直接将这些参数放到一个数组中再传递, 最后借用方法的参数列表是一样的.
应用场景:当参数明确时可用call, 当参数不明确时可用apply给合arguments
12.针对 jQuery 的优化方法?
(1)基于Class的选择性的性能相对于Id选择器开销很大,因为需遍历所有DOM元素。

(2)频繁操作的DOM,先缓存起来再操作。用Jquery的链式调用更好。
 比如:var str=$("a").attr("href");

(3)for (var i = size; i < arr.length; i++) {}
 for 循环每一次循环都查找了数组 (arr) 的.length 属性,在开始循环的时候设置一个变量来存储这个数字,可以让循环跑得更快:
 for (var i = size, length = arr.length; i < length; i++) {}
13.那些操作会造成内存泄漏?
内存泄漏指任何对象在您不再拥有或需要它之后仍然存在。
(1)垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为 0(没有其他对象引用过该对象),或对该对象的惟一引用是循环的,那么该对象的内存即可回收。
(2)setTimeout 的第一个参数使用字符串而非函数的话,会引发内存泄漏。
(3)闭包、控制台日志、循环(在两个对象彼此引用且彼此保留时,就会产生一个循环)
14.如何判断当前脚本运行在浏览器还是node环境中?(阿里)
通过判断Global对象是否为window,如果不为window,当前脚本没有运行在浏览器中
1
1
分享到:
评论

相关推荐

    2021 前端面试笔试题及答案.pdf

    本文档是关于前端面试笔试题及答案的总结,涵盖了JavaScript基础、Object.create、instanceof、new操作符、Promise等多个知识点。 JavaScript基础 JavaScript是一种高级的、动态的、基于原型的语言,具有面向对象...

    web前端笔试题面试题汇总+前端优化总结

    web前端笔试题面试题汇总+前端优化总结 web前端笔试题面试题汇总+前端优化总结 web前端笔试题面试题汇总+前端优化总结 web前端笔试题面试题汇总+前端优化总结 web前端笔试题面试题汇总+前端优化总结 web前端笔试题...

    自己整理的一些前端面试笔试题pdf.pdf

    本篇文章总结了前端笔试题中的几个关键知识点,包括JavaScript基础、Object.create、instanceof、new操作符、Promise等。 JavaScript基础 JavaScript基础知识是前端开发的基础,包括变量、数据类型、运算符、控制...

    前端笔试面试题学习总结

    "前端笔试面试题学习总结"这个主题涵盖了前端开发者需要掌握的关键知识点,包括HTML、CSS、JavaScript、DOM操作、浏览器工作原理、性能优化、响应式设计、前端框架等方面。以下是对这些知识点的详细解析: 1. **...

    H5前端面试大全-包含大厂面试题_25个md文件分类面试题.rar

    这里将收集我做过的所有的前端面试笔试题,并根据自己的理解提供解答,以及一些关于前端找工作方面的经验等。 前端笔试面试题部分 试题链接 原题概述 标签分类 1.md CSS部分 CSS 2.md HTML部分 HTML 3.md FEX ...

    web前端笔试题面试题汇总+前端优化总结 分享给需要的同学

    web前端笔试题面试题汇总+前端优化总结 分享给需要的同学

    web前端笔试面试总结+js+css

    在web前端面试和笔试中,重点考察的知识点通常涵盖HTML、CSS、JavaScript以及相关的优化技巧。以下是对这些关键领域的详细说明: 1. **前端优化**: - **目的**:前端优化旨在提升用户体验,加快页面加载速度,...

    baidu web前端笔试面试题目.doc

    下面是 Web 前端开发的知识点总结: 1. UI 设计部分:Web 前端开发的第一步是 UI 设计,负责将创意转化为平面设计图,并制作 PNG 等小图片。UI 设计还要预包含用户交互设计的元素,如何和用户交互的基本原型等。 2...

    腾讯Web前端研发实习生面试经验(笔试+一面+二面)

    通过这篇面试经验分享,我们可以掌握到以下几个重要的知识点: 1. 基础知识:面试中考察了基础知识,如C语言、数据结构、算法、计算机网络、操作系统等,强调了基础知识的重要性。 2. Web前端知识:面试中涉及到...

    前端笔试面试题目总结.docx

    在前端笔试面试中,开发者经常...在面试或笔试中,理解和熟练运用这些知识点至关重要,它们涵盖了前端开发的基础和进阶技巧,体现了开发者的综合能力。对于前端开发者来说,不断学习和实践这些技术是保持竞争力的关键。

    前端笔试面试题目总结.pdf

    前端笔试面试题目涉及众多知识点,主要涵盖HTML、CSS、JavaScript、网络协议以及浏览器兼容性等方面。...以上是前端笔试面试中常见的知识点,深入理解和熟练运用这些概念对于成为一名优秀的前端开发者至关重要。

    2023最新前端面试题总结HTML5+CSS3+JS+TS4+Vue3+React18+八股文+手写+项目+笔试

    2023年最全前端面试(20w字)HTML5+CSS3+JS+TS4+Vue3+React18+八股文+手写+项目+笔试 (一开始就是在CSDN博客上写的,现在应部分同学的要求,我直接将博客内容复制成pdf

    前端面试笔试面试题20个.docx

    根据给定文件的信息,我们可以总结出以下前端面试中的关键知识点: ### 1. 个人经历和技术背景 在介绍自己的技术背景时,应突出以下几个方面: - **工作经验**:明确指出自己从事前端开发的时间长度,以及参与过的...

    vue面试题+web前端笔试题面试题汇总+前端优化总结+《Vue-框架开发》真题

    在IT行业中,Web前端开发是不可或...掌握这些知识点,对于准备Vue.js的面试或笔试至关重要。同时,持续学习和实践才能真正成为前端开发的高手。在实际工作中,不断研究前端优化方法,能有效提升项目的性能和用户体验。

    笔试大全面试宝典 自己总结

    【标题】:“笔试大全面试宝典 自己总结” 这篇资料是作者个人对求职笔试过程中的各类题目和技巧进行的全面总结,旨在帮助求职者更好地准备面试和笔试环节。资料涵盖了多家公司的笔试题,以及JavaScript编程语言的...

    前端面试题及答案.pdf

    本文档总结了前端面试题及答案,涵盖了 Vue.js 相关知识点,包括 Vuex 的五个核心概念、Vue 生命周期、Cookie、localStorage 和 sessionStorage 的区别等。 一、Vuex 的五个核心概念 Vuex 是一个专门为 Vue.js ...

    2021前端面试题含答案下载 [完整版]pdf.pdf

    前端面试题知识点总结 一、JavaScript基础 1. 手写Object.create思路:将传入的对象作为原型,创建一个新的对象,并将其原型设置为传入的对象。 2. 手写instanceof方法:instanceof运算符用于判断构造函数的...

    前端面试宝典

    ### 前端面试宝典知识点详解 #### 一、HTML和CSS ##### 浏览器内核 在前端开发中,了解不同浏览器所使用的内核对于确保网页在各种环境中的一致性和兼容性至关重要。 - **IE (Internet Explorer):** 使用Trident...

    前端面试题总结.docx

    前端面试是评估开发者技术能力的重要环节,涵盖的知识点广泛且深入。以下是对这些知识点的详细说明: 1. **ES5与ES6数组去重**:ES5中可以通过`filter()`方法结合`indexOf()`来实现,ES6引入了`Set`数据结构,可以...

Global site tag (gtag.js) - Google Analytics