注重体验与质量的电子书资源下载网站
分类于: 职场办公 云计算&大数据
简介
前端程序员面试笔试宝典 豆 8.7分
资源最后更新于 2020-08-17 14:40:24
作者:平文
出版社:机械工业出版社
出版日期:2018-01
ISBN:9787111607472
文件格式: pdf
标签: 前端 面试 求职 宝典 笔试 面试技巧 计算机 挺好
简介· · · · · ·
本书是一本前端程序员面试笔试的应试类用书,在内容上,除了讲解如何解答前端程序员面试笔试问题,还引入了相关知识点辅以说明,让读者能够更加容易理解。
本书包括前端程序员面试笔试过程中各类知识点,在题目的广度上,搜集了近3年来多家IT企业针对前端岗位的笔试面试真题。在讲解的深度上,本书由浅入深,庖丁解牛式地分析每一个知识点,并提炼归纳,同时,引入相关知识点,并对其进行深度剖析,让读者不仅能够理解这个知识点,还能在遇到相似问题的时候,也能游刃有余地解决。本书根据知识点进行分类,结构合理,条理清晰,便于读者学习与查阅。
目录
序
前言
面试笔试经验技巧篇
经验技巧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 HTML 20
1.2 HTML5 21
1.2.1 HTML5新特性 21
1.2.2 Web App、Hybrid App和Native App 21
1.3 DOCTYPE 23
1.3.1 语法 23
1.3.2 常用声明 23
1.3.3 浏览器渲染模式 24
1.4 XHTML 25
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 嵌入JavaScript 33
2.3.1 内联脚本 33
2.3.2 外部脚本 34
2.3.3 元素属性 35
2.4 meta元素 36
2.4.1 charset 36
2.4.2 name 36
2.4.3 http-equiv 37
2.5 超链接 38
2.5.1 href 38
2.5.2 target 38
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 iframe 48
2.9.1 iframe属性 48
2.9.2 iframe用途 49
2.10 多媒体 50
2.10.1 使用多媒体元素的优势 50
2.10.2 video 51
2.10.3 audio 52
2.11 绘图 53
2.11.1 位图图像与矢量图形 53
2.11.2 canvas 53
2.11.3 SVG 54
2.12 数据存储 55
2.12.1 Cookie 55
2.12.2 Web存储 56
2.12.3 userData 56
第3章 CSS基础 57
3.1 CSS3 57
3.1.1 CSS3新特性 57
3.1.2 渐进增强 58
3.2 盒模型 59
3.2.1 盒模型 60
3.2.2 box-sizing 60
3.2.3 盒子的显示类型 61
3.3 元素盒类型 62
3.3.1 list-item 62
3.3.2 表格相关的属性值 63
3.3.3 run-in 63
3.3.4 inline-block 63
3.3.5 伸缩盒 64
3.4 BFC 65
3.4.1 创建BFC 65
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 创建BFC 85
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-index 91
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 outline 95
4.4 文本属性 96
4.4.1 overflow 96
4.4.2 text-decoration 97
4.4.3 white-space 97
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 background 110
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 Hack 121
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 Reset 129
5.3.1 全局重置 129
5.3.2 Reset.css 129
5.3.3 Normalize.css 130
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 Bootstrap 145
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/IP 153
6.1.1 协议 153
6.1.2 TCP/IP 154
6.2 HTTP 155
6.2.1 URI和URL 156
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 REST 162
6.3.2 约束条件 162
6.4 TCP 163
6.4.1 连接管理 163
6.4.2 确认应答 164
6.4.3 窗口控制 166
6.4.4 重传控制 166
6.5 HTTPS 167
6.5.1 加密 168
6.5.2 数字签名 169
6.5.3 数字证书 169
6.5.4 安全通信机制 170
6.6 HTTP/2.0 171
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 ECMAScript 175
7.1.2 DOM 176
7.1.3 BOM 176
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 JSON 202
7.7.1 语法 203
7.7.2 序列化 204
7.7.3 解析 205
7.8 日期和时间(Date) 206
7.8.1 UTC和GMT 206
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 this 230
7.13 即时函数 232
7.13.1 块级作用域 233
7.13.2 循环 233
7.13.3 可读性和undefined 233
7.13.4 类库封装 234
7.14 检测类型和对象 234
7.14.1 检测数据的类型 235
7.14.2 对象之间的关联性 236
7.15 Node.js 237
7.15.1 安装Node 237
7.15.2 npm 238
第8章 客户端中的JavaScript 239
8.1 BOM 239
8.1.1 Window 239
8.1.2 Location 242
8.1.3 Navigator 243
8.1.4 History 245
8.2 DOM 247
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 Ajax 282
8.7.1 1级XMLHttpRequest 282
8.7.2 2级XMLHttpRequest 285
8.7.3 跨域通信 288
8.8 jQuery 290
8.8.1 jQuery基础 290
8.8.2 操作元素 291
8.8.3 元素的属性 295
8.8.4 事件 298
8.8.5 Ajax 299
8.8.6 动画 300
8.8.7 工具函数 301
前言
面试笔试经验技巧篇
经验技巧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 HTML 20
1.2 HTML5 21
1.2.1 HTML5新特性 21
1.2.2 Web App、Hybrid App和Native App 21
1.3 DOCTYPE 23
1.3.1 语法 23
1.3.2 常用声明 23
1.3.3 浏览器渲染模式 24
1.4 XHTML 25
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 嵌入JavaScript 33
2.3.1 内联脚本 33
2.3.2 外部脚本 34
2.3.3 元素属性 35
2.4 meta元素 36
2.4.1 charset 36
2.4.2 name 36
2.4.3 http-equiv 37
2.5 超链接 38
2.5.1 href 38
2.5.2 target 38
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 iframe 48
2.9.1 iframe属性 48
2.9.2 iframe用途 49
2.10 多媒体 50
2.10.1 使用多媒体元素的优势 50
2.10.2 video 51
2.10.3 audio 52
2.11 绘图 53
2.11.1 位图图像与矢量图形 53
2.11.2 canvas 53
2.11.3 SVG 54
2.12 数据存储 55
2.12.1 Cookie 55
2.12.2 Web存储 56
2.12.3 userData 56
第3章 CSS基础 57
3.1 CSS3 57
3.1.1 CSS3新特性 57
3.1.2 渐进增强 58
3.2 盒模型 59
3.2.1 盒模型 60
3.2.2 box-sizing 60
3.2.3 盒子的显示类型 61
3.3 元素盒类型 62
3.3.1 list-item 62
3.3.2 表格相关的属性值 63
3.3.3 run-in 63
3.3.4 inline-block 63
3.3.5 伸缩盒 64
3.4 BFC 65
3.4.1 创建BFC 65
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 创建BFC 85
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-index 91
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 outline 95
4.4 文本属性 96
4.4.1 overflow 96
4.4.2 text-decoration 97
4.4.3 white-space 97
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 background 110
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 Hack 121
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 Reset 129
5.3.1 全局重置 129
5.3.2 Reset.css 129
5.3.3 Normalize.css 130
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 Bootstrap 145
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/IP 153
6.1.1 协议 153
6.1.2 TCP/IP 154
6.2 HTTP 155
6.2.1 URI和URL 156
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 REST 162
6.3.2 约束条件 162
6.4 TCP 163
6.4.1 连接管理 163
6.4.2 确认应答 164
6.4.3 窗口控制 166
6.4.4 重传控制 166
6.5 HTTPS 167
6.5.1 加密 168
6.5.2 数字签名 169
6.5.3 数字证书 169
6.5.4 安全通信机制 170
6.6 HTTP/2.0 171
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 ECMAScript 175
7.1.2 DOM 176
7.1.3 BOM 176
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 JSON 202
7.7.1 语法 203
7.7.2 序列化 204
7.7.3 解析 205
7.8 日期和时间(Date) 206
7.8.1 UTC和GMT 206
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 this 230
7.13 即时函数 232
7.13.1 块级作用域 233
7.13.2 循环 233
7.13.3 可读性和undefined 233
7.13.4 类库封装 234
7.14 检测类型和对象 234
7.14.1 检测数据的类型 235
7.14.2 对象之间的关联性 236
7.15 Node.js 237
7.15.1 安装Node 237
7.15.2 npm 238
第8章 客户端中的JavaScript 239
8.1 BOM 239
8.1.1 Window 239
8.1.2 Location 242
8.1.3 Navigator 243
8.1.4 History 245
8.2 DOM 247
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 Ajax 282
8.7.1 1级XMLHttpRequest 282
8.7.2 2级XMLHttpRequest 285
8.7.3 跨域通信 288
8.8 jQuery 290
8.8.1 jQuery基础 290
8.8.2 操作元素 291
8.8.3 元素的属性 295
8.8.4 事件 298
8.8.5 Ajax 299
8.8.6 动画 300
8.8.7 工具函数 301