猜你喜欢
前端程序员面试笔试宝典

前端程序员面试笔试宝典

书籍作者:平文 ISBN:9787111607472
书籍语言:简体中文 连载状态:全集
电子书格式:pdf,txt,epub,mobi,azw3 下载次数:4488
创建日期:2021-02-14 发布日期:2021-02-14
运行环境:PC/Windows/Linux/Mac/IOS/iPhone/iPad/Kindle/Android/安卓/平板
内容简介
本书是一本前端程序员面试笔试的应试类用书,在内容上,除了讲解如何解答前端程序员面试笔试问题,还引入了相关知识点辅以说明,让读者能够更加容易理解。
本书包括前端程序员面试笔试过程中各类知识点,在题目的广度上,搜集了近3年来多家IT企业针对前端岗位的笔试面试真题。在讲解的深度上,本书由浅入深,庖丁解牛式地分析每一个知识点,并提炼归纳,同时,引入相关知识点,并对其进行深度剖析,让读者不仅能够理解这个知识点,还能在遇到相似问题的时候,也能游刃有余地解决。本书根据知识点进行分类,结构合理,条理清晰,便于读者学习与查阅。
作者简介

平文,上海松江人,前端程序员,毕业于上海师范大学计算机科学与技术专业。现就职于车轮互联,从事Web方面的研发工作,擅长JavaScript/PHP等主流编程语言,对CSS和HTML有深入的研究,具有丰富的项目经验。酷爱中国历史与自然科学,喜欢户外运动。

编辑推荐
适读人群 :计算机类相关专业应届毕业生
在这里,有面试笔试常见技巧的提炼与总结;
在这里,有面试笔试高频前端知识点的整理与剖析;
在这里,有面试笔试历年前端真题的解答与拓展。
前言
计算机技术博大精深,日新月异。Hadoop、GPU计算、移动互联网、模式匹配、图像识别、神经网络、蚁群算法、大数据、机器学习、人工智能、深度学习等新技术让人眼花缭乱,稍有不慎,就会被时代抛弃。于是,很多IT从业者就开始困惑了,不知道从何学起,到底什么才是计算机技术的基石。其实,究其本质,还是最基础的计算机语言知识、数据结构与算法知识。所以,无论是世界级的大型企业还是几个人的小公司,在面试求职者的时候,往往都会考察这些最基础的知识,无论你的研究方向是什么,这些基础知识都是应该熟练掌握的。
本书在写作风格上,推陈出新,对于前端知识点的讲解,不仅有文字描述,更以示例佐证(示例代码可以从https://github.com/pwstrick/FrondEndInterviewCode下载)。为了能够写出精品书籍,我对每一个技术问题,都反复推敲,与技术大牛一起反复论证其可行性;对每一句话,都咬文嚼字,字斟句酌,所有这些付出,只为让读者能够对书中技术点放心,文字描述舒心。
本书在选择题目时也下了巨大的工夫:首先,搜集近3年来多家IT企业的面试笔试真题,包括已经出版的其他著作、技术博客、在线编码平台、刷题网站等,保证所选样本足够大。其次,在选择题目的时候,尽可能不选择那种一眼就能知道结果的简单题,也不选择怪题、偏题、难题。选题原则是选择难度适中或者看上去简单但实际容易被坑的题目,力求遴选出来的真题能够最大限度地帮助读者。在真题的解析上,采用层层递进的写法,先易后难,层层深入,将问题抽丝剥茧,使读者能够跟随书中的思路,一步步找到问题的最优解。
写作的过程是一个自我提高、自我认识的过程,很多知识,只有你深入理解与剖析后,才能领悟其中的精髓,掌握其中的技巧,程序员求职面试也不例外。本书不仅具备了其他书籍分析透彻,代码清晰合理等优点,还具备以下两个方面的优势:
第一,知识覆盖面全。本书涉及知识点覆盖了前端程序员面试笔试中至少98%的基础知识点。
第二,讲解详细,剖析深入。本书对每个知识点都进行了详细阐述,知识点介绍完以后还会针对部分真题进行深度分析与讲解,图文并茂,生动形象。
我在相关技术岗位上已经有多年的经验。一直想把自己的心得分享给大家,机缘巧合促成了这本书的撰写。在此,要感谢与出版本书有关的人,因为有你们,我才能坚持下来,完成整本书的编写。
首先,感谢机械工业出版社时静老师给我写作的机会。其次,要感谢的是楚秦,他不但让我加入到这项工作中,还审阅了整本书,并对文字和代码进行了修改和润色,为改进本书提供了许多宝贵的建设性意见,这些建议与意见极大地提高了本书的质量。
除此之外,也感谢那些给予我热情帮助的人,从他们那里亦得到了很多非常好的建议,这些人是(按姓氏拼音排列):陈安阳、陈曼杰、陈涛、潘义璠、沈哲俊、王春明、王汝婷、夏丽、赵茹林、周捷、周山。还要特别感谢周晶撰写序。
最后,我要感谢我的家人,他们是我生命中最重要的人,感谢他们对我的理解和鼓励。尤其要感谢我的爱妻,一直陪伴在我身边,在我感到困难的时候支持我、鼓励我,为我营造了一个安心、舒适的写作环境,让我有信心完成整本书的写作。
其实,本书不仅可以作为程序员求职的应试类书籍,还可以作为前端程序员的教辅书籍进行学习。书中的很多思想、方法对于提高对前端知识的理解大有裨益,无论你是本科生还是研究生,无论你是低年级学生还是高年级学生,无论你对计算机底层知识或是当前的计算机前沿知识是否了解,都不影响你学好本书。
本书中有部分思想来源于网络上的无名英雄,无法追踪到原始出处,在此对这些幕后英雄致以最崇高的敬意。没有学不好的学生,只有教不好的老师,希望无论是什么层次的学生,都能毫无障碍地看懂书中所讲内容。如果读者存在求职困惑或是对书中的内容存在异议,都可以通过[email protected]联系作者。


平 文
于上海松江
目录

前言
面试笔试经验技巧篇
经验技巧1 如何巧妙地回答面试官的问题?2
经验技巧2 如何回答技术性的问题?2
经验技巧3 如何回答非技术性问题?4
经验技巧4 如何回答快速估算类问题?5
经验技巧5 如何回答算法设计问题?5
经验技巧6 如何回答系统设计题?7
经验技巧7 如何解决求职中的时间冲突问题?9
经验技巧8 如果面试问题曾经遇到过,是否要告诉面试官?10
经验技巧9 被企业拒绝后是否可以再申请?10
经验技巧10 如何应对自己不会回答的问题?11
经验技巧11 如何应对面试官的“激将法”语言?11
经验技巧12 如何处理与面试官持不同观点这个问题?12
经验技巧13 职场暗语有哪些?12
经验技巧14 当前市场对前端工程师的需求如何?待遇如何?15
经验技巧15 前端工程师未来的发展方向如何?15
经验技巧16 前端工程师有哪些可供选择的职业发展道路?16
经验技巧17 企业在招聘时,对前端工程师通常有何要求?前端工程师的日常工作是什么?16
经验技巧18 要想成为一名出色的前端工程师,需要掌握哪些必备的知识?有哪些好的书籍
或网站可供推荐学习?17
面试笔试技术攻克篇
第1章 HTML基础20
1.1 HTML20
1.2 HTML521
1.2.1 HTML5新特性21
1.2.2 Web App、Hybrid App和Native App21
1.3 DOCTYPE23
1.3.1 语法23
1.3.2 常用声明23
1.3.3 浏览器渲染模式24
1.4 XHTML25
1.4.1 XHTML规范25
1.4.2 HTML与XHTML的区别25
1.5 语义化26
1.5.1 语义化的元素26
1.5.2 微格式27
1.6 HTML实体28
1.6.1 HTML实体的定义28
1.6.2 可转义的字符或符号29
第2章 HTML元素和高级功能30
2.1 元素基础30
2.1.1 元素的分类30
2.1.2 元素属性31
2.2 应用CSS样式32
2.2.1 内联样式32
2.2.2 内嵌样式32
2.2.3 外部样式33
2.3 嵌入JavaScript33
2.3.1 内联脚本33
2.3.2 外部脚本34
2.3.3 元素属性35
2.4 meta元素36
2.4.1 charset36
2.4.2 name36
2.4.3 http-equiv37
2.5 超链接38
2.5.1 href38
2.5.2 target38
2.5.3 其他属性39
2.6 图像39
2.6.1 属性40
2.6.2 分区响应图40
2.6.3 插图元素41
2.7 收集用户数据42
2.7.1 文本42
2.7.2 日期与数值43
2.7.3 按钮和其他44
2.7.4 给表单控件分组45
2.8 表格46
2.8.1 表格的组成46
2.8.2 属性47
2.9 iframe48
2.9.1 iframe属性48
2.9.2 iframe用途49
2.10 多媒体50
2.10.1 使用多媒体元素的优势50
2.10.2 video51
2.10.3 audio52
2.11 绘图53
2.11.1 位图图像与矢量图形53
2.11.2 canvas53
2.11.3 SVG54
2.12 数据存储55
2.12.1 Cookie55
2.12.2 Web存储56
2.12.3 userData56
第3章 CSS基础57
3.1 CSS357
3.1.1 CSS3新特性57
3.1.2 渐进增强58
3.2 盒模型59
3.2.1 盒模型60
3.2.2 box-sizing60
3.2.3 盒子的显示类型61
3.3 元素盒类型62
3.3.1 list-item62
3.3.2 表格相关的属性值63
3.3.3 run-in63
3.3.4 inline-block63
3.3.5 伸缩盒64
3.4 BFC65
3.4.1 创建BFC65
3.4.2 BFC的用途66
3.5 使用CSS选择器68
3.5.1 基本选择器68
3.5.2 关系选择器69
3.5.3 伪选择器69
3.5.4 选择器分组70
3.6 内容生成71
3.6.1 计数器71
3.6.2 引用属性值和图像72
3.6.3 添加文本73
3.7 层叠73
3.8 单位76
3.8.1 绝对长度单位76
3.8.2 相对长度单位76
3.8.3 其他单位78
3.9 百分数78
3.9.1 定位79
3.9.2 宽和高79
3.9.3 外边距和内边距80
3.9.4 边框圆角和位移80
3.9.5 字体大小81
3.10 颜色82
3.10.1 颜色名称82
3.10.2 RGB颜色82
3.10.3 HSL颜色83
3.10.4 Web安全色83
第4章 CSS属性84
4.1 浮动84
4.1.1 浮动范围84
4.1.2 创建BFC85
4.1.3 负外边距85
4.1.4 清除浮动86
4.2 定位88
4.2.1 相对定位88
4.2.2 绝对定位89
4.2.3 固定定位89
4.2.4 偏移属性90
4.2.5 z-index91
4.3 边框92
4.3.1 外观92
4.3.2 宽度92
4.3.3 颜色93
4.3.4 圆角93
4.3.5 阴影95
4.3.6 outline95
4.4 文本属性96
4.4.1 overflow96
4.4.2 text-decoration97
4.4.3 white-space97
4.4.4 文本换行98
4.5 字体99
4.5.1 字体系列100
4.5.2 Web字体100
4.6 垂直对齐102
4.6.1 行内非替换元素102
4.6.2 行内替换元素103
4.6.3 垂直对齐104
4.7 背景105
4.7.1 起始点和裁剪背景区105
4.7.2 背景图像尺寸107
4.7.3 背景图像附着108
4.7.4 背景图像定位109
4.7.5 background110
4.8 变形、过渡和动画111
4.8.1 变形111
4.8.2 过渡112
4.8.3 动画114
4.9 媒体查询117
4.9.1 使用方法117
4.9.2 媒体类型117
4.9.3 媒体特性118
4.9.4 操作符119
4.9.5 支持度119
第5章 CSS应用121
5.1 CSS Hack121
5.1.1 浏览器前缀121
5.1.2 条件注释121
5.1.3 CSS属性级前缀122
5.2 布局123
5.2.1 浮动布局123
5.2.2 定位布局124
5.2.3 流式布局124
5.2.4 弹性布局125
5.2.5 多列布局125
5.2.6 等高布局127
5.3 CSS Reset129
5.3.1 全局重置129
5.3.2 Reset.css129
5.3.3 Normalize.css130
5.4 伸缩盒布局131
5.4.1 主轴和侧轴132
5.4.2 对齐方式133
5.4.3 伸缩性135
5.4.4 显示顺序137
5.4.5 新旧版本属性对照137
5.5 居中138
5.5.1 水平居中139
5.5.2 垂直居中140
5.6 CSS预处理器142
5.6.1 变量与运算142
5.6.2 选择器嵌套143
5.6.3 控制语句143
5.6.4 混合和函数144
5.6.5 继承144
5.7 Bootstrap145
5.7.1 栅格系统146
5.7.2 排版148
5.7.3 颜色148
5.7.4 表格149
5.7.5 表单150
5.7.6 组件151
第6章 计算机网络153
6.1 TCP/IP153
6.1.1 协议153
6.1.2 TCP/IP154
6.2 HTTP155
6.2.1 URI和URL156
6.2.2 HTTP协议156
6.2.3 HTTP报文157
6.2.4 HTTP首部158
6.2.5 缓存160
6.3 RESTful架构风格162
6.3.1 REST162
6.3.2 约束条件162
6.4 TCP163
6.4.1 连接管理163
6.4.2 确认应答164
6.4.3 窗口控制166
6.4.4 重传控制166
6.5 HTTPS167
6.5.1 加密168
6.5.2 数字签名169
6.5.3 数字证书169
6.5.4 安全通信机制170
6.6 HTTP/2.0171
6.6.1 二进制分帧层171
6.6.2 多路通信172
6.6.3 请求优先级173
6.6.4 服务器推送173
6.6.5 首部压缩173
第7章 JavaScript语言175
7.1 JavaScript概述175
7.1.1 ECMAScript175
7.1.2 DOM176
7.1.3 BOM176
7.2 基本语法177
7.2.1 字符集177
7.2.2 标识符、关键字和保留字177
7.2.3 数据类型178
7.2.4 运算符179
7.2.5 表达式181
7.2.6 语句181
7.3 数字和字符串183
7.3.1 数字183
7.3.2 字符串185
7.4 强制类型转换188
7.4.1 转换为数字188
7.4.2 转换为字符串190
7.4.3 转换为布尔值191
7.4.4 相等运算符191
7.5 全局对象192
7.5.1 全局对象193
7.5.2 包装对象193
7.5.3 处理URI的全局函数194
7.6 对象(Object)195
7.6.1 创建195
7.6.2 原型和原型链195
7.6.3 属性196
7.6.4 可扩展性200
7.7 JSON202
7.7.1 语法203
7.7.2 序列化204
7.7.3 解析205
7.8 日期和时间(Date)206
7.8.1 UTC和GMT206
7.8.2 构造函数206
7.8.3 静态方法207
7.8.4 日期格式化方法208
7.8.5 其他日期方法208
7.9 正则表达式(RegExp)209
7.9.1 创建209
7.9.2 语法210
7.9.3 String中的方法212
7.9.4 RegExp中的方法214
7.10 数组(Array)215
7.10.1 创建215
7.10.2 数组操作215
7.10.3 数组方法216
7.10.4 类数组对象和字符串220
7.11 函数(Function)221
7.11.1 作用域222
7.11.2 函数基本概念223
7.11.3 闭包227
7.11.4 函数式编程228
7.12 this230
7.13 即时函数232
7.13.1 块级作用域233
7.13.2 循环233
7.13.3 可读性和undefined233
7.13.4 类库封装234
7.14 检测类型和对象234
7.14.1 检测数据的类型235
7.14.2 对象之间的关联性236
7.15 Node.js237
7.15.1 安装Node237
7.15.2 npm238
第8章 客户端中的JavaScript239
8.1 BOM239
8.1.1 Window239
8.1.2 Location242
8.1.3 Navigator243
8.1.4 History245
8.2 DOM247
8.2.1 节点247
8.2.2 操作元素250
8.3 元素的属性、尺寸和坐标256
8.3.1 特性和属性256
8.3.2 尺寸258
8.3.3 坐标261
8.4 控制CSS样式264
8.4.1 内联样式264
8.4.2 获取CSS属性264
8.4.3 设置CSS属性265
8.4.4 读写CSS类265
8.4.5 计算样式266
8.5 事件267
8.5.1 术语267
8.5.2 注册事件268
8.5.3 事件传播271
8.5.4 事件对象272
8.5.5 模拟事件273
8.6 表单275
8.6.1 表单275
8.6.2 单选框和复选框277
8.6.3 选择框278
8.6.4 上传按钮280
8.7 Ajax282
8.7.1 1级XMLHttpRequest282
8.7.2 2级XMLHttpRequest285
8.7.3 跨域通信288
8.8 jQuery290
8.8.1 jQuery基础290
8.8.2 操作元素291
8.8.3 元素的属性295
8.8.4 事件298
8.8.5 Ajax299
8.8.6 动画300
8.8.7 工具函数301
短评

我面试中遇到的很多问题,都能在书中找到答案。个人觉得,如果用心消化该书的内容,面试能更得心应手。

2018-09-30

不错的前端面试书!

2018-10-01

从字里行间可以看出作者写的很用心,内容比较基础,也很全面,自己收货了很多。知识点都蛮实用的,对前端笔试有很大的帮助。

2018-09-26

最近在学前端,学了好几个月了,打算去面试但是心里还没什么谱,前几天搜书看到这本就买了。本来以为书里主要是讲面试技巧,拿到了之后才发现还着重讲了很多容易忽略的基础知识点,我觉得对面试还是有帮助的

2018-10-10

书中提到了很多平时没有注意到的知识点,读后有种豁然开朗的感觉

2018-09-30

标签
前端,面试,求职,笔试,宝典,面试技巧,挺好,透彻