展开全部

主编推荐语

本书既可以为互联网行业新人提供一幅精准的技术路线图,又可以作为相关从业程序员即学即用的工具书。

内容简介

全栈”翻译自英文Full Stack,表示为了完成一个项目所需要的一系列技术的集合。IT行业发展到现阶段,开发一个Web应用,工程师需要具备的技能涵盖:前端标记语言(如HTML 5、CSS 3)、前端编程语言(如JavaScript)、服务器端编程语言(如Node.js)、数据库(如MongoDB)等,这些技术互相联系、互相依赖,缺一不可。

本书分享了全栈工程师的技能要求、核心竞争力、未来发展方向,以及对移动端的思考,内容涵盖了Web全栈开发的方方面面。

目录

  • 版权信息
  • 前言
  • 第1部分 全栈之JavaScript
  • 第1章 JavaScript基础概念
  • 1.1 JavaScript的用途
  • 1.1.1 数据的验证
  • 1.1.2 制作页面动态效果
  • 1.1.3 对事件做出响应
  • 1.1.4 单页面应用
  • 1.1.5 网页游戏
  • 1.1.6 服务器端的应用
  • 1.2 JavaScript的发展历史
  • 1.2.1 悄然诞生
  • 1.2.2 稳步发展
  • 1.2.3 黄金时代
  • 1.2.4 JavaScript和ECMAScript
  • 1.2.5 JavaScript和Java
  • 1.3 JavaScript的语法特点
  • 1.3.1 基于对象
  • 1.3.2 事件驱动
  • 1.3.3 松散型
  • 1.3.4 解释型
  • 1.4 JavaScript的引入方式
  • 1.4.1 在域名或者重定向的位置引入
  • 1.4.2 在事件中引入
  • 1.4.3 在页面中嵌入
  • 1.4.4 引入外部JavaScript文件
  • 1.4.5 注意事项
  • 1.5 JavaScript中的输出工具
  • 1.5.1 console
  • 1.5.2 alert()
  • 1.5.3 document.write();
  • 1.5.4 prompt(str,[value]);
  • 1.5.5 confirm()
  • 1.5.6 JavaScript注释
  • 第2章 基本构成
  • 2.1 JavaScript变量
  • 2.1.1 变量的概念
  • 2.1.2 变量的声明和赋值
  • 2.1.3 声明变量的其他注意事项
  • 2.2 数据类型
  • 2.2.1 typeof操作符
  • 2.2.2 初始类型
  • 2.2.3 引用类型
  • 2.3 JavaScript运算符
  • 2.3.1 算术运算符
  • 2.3.2 关系运算符(或比较运算符)
  • 2.3.3 赋值运算符
  • 2.3.4 逻辑运算符
  • 2.3.5 一元运算符
  • 2.3.6 三元运算符
  • 2.3.7 特殊运算符
  • 2.4 JavaScript流程控制
  • 2.4.1 名词解释
  • 2.4.2 选择结构
  • 2.4.3 循环结构
  • 第3章 函数和数组
  • 3.1 函数的基本概念
  • 3.1.1 函数的声明
  • 3.1.2 函数的调用
  • 3.1.3 参数
  • 3.1.4 函数的返回值
  • 3.1.5 作用域
  • 3.1.6 回调函数
  • 3.1.7 递归函数
  • 3.1.8 闭包函数
  • 3.2 内置顶层函数和数据类型转换
  • 3.2.1 内置顶层函数
  • 3.2.2 数据类型转换
  • 3.3 ES6中新增的函数语法
  • 3.3.1 函数参数的默认值
  • 3.3.2 函数的name属性
  • 3.3.3 箭头函数
  • 3.4 数组
  • 3.4.1 数组的概念
  • 3.4.2 数组的创建
  • 3.4.3 数组的访问
  • 3.4.4 数组的遍历
  • 第4章 对象
  • 4.1 JavaScript对象
  • 4.1.1 名词解释
  • 4.1.2 创建对象的方法
  • 4.1.3 属性与方法
  • 4.1.4 销毁对象
  • 4.1.5 对象的遍历
  • 4.1.6 对象的存储方式
  • 4.1.7 instanceof
  • 4.2 对象的特性
  • 4.2.1 对象的特性——封装
  • 4.2.2 对象的特性——继承
  • 4.2.3 this指针
  • 4.2.4 对象的分类
  • 4.3 ES6中对象的新特性
  • 4.3.1 类的支持
  • 4.3.2 变量的解构赋值
  • 4.3.3 扩展运算符(spread)和rest参数
  • 4.3.4 属性的简洁表示
  • 4.3.5 属性名表达式
  • 4.3.6 方法的name属性
  • 第5章 原生对象
  • 5.1 Object对象
  • 5.1.1 Object的常用方法
  • 5.1.2 属性的遍历(Object对象方法的使用)
  • 5.2 Math对象
  • 5.2.1 Math对象的属性
  • 5.2.2 Math对象的方法
  • 5.3 字符串对象
  • 5.3.1 创建String对象
  • 5.3.2 字符串对象的属性
  • 5.3.3 字符串对象的方法
  • 5.4 数组对象
  • 5.4.1 数组对象的属性
  • 5.4.2 数组对象的方法
  • 5.4.3 数组对象的构造函数的方法
  • 5.5 日期对象
  • 5.5.1 定义日期对象
  • 5.5.2 获取日期信息的方法
  • 5.5.3 设置日期的方法
  • 5.6 正则
  • 5.6.1 正则表达式的概念
  • 5.6.2 应用场合
  • 5.6.3 创建正则表达式
  • 5.6.4 正则表达式的模式
  • 5.6.5 正则方法
  • 5.6.6 字符串中用到正则的函数
  • 5.7 Set数据结构
  • 5.7.1 Set基本用法
  • 5.7.2 Set属性和方法
  • 5.7.3 Set遍历方法
  • 5.7.4 WeakSet
  • 5.8 Map数据结构
  • 5.8.1 Map 基本用法
  • 5.8.2 Map 属性和方法
  • 5.8.3 Map 遍历方法
  • 5.8.4 Map与数组对象的转换
  • 5.8.5 WeakMap
  • 第6章 常见网页效果制作
  • 6.1 BOM介绍
  • 6.1.1 window对象
  • 6.1.2 document对象
  • 6.1.3 history对象
  • 6.1.4 location对象
  • 6.1.5 screen对象
  • 6.1.6 navigator对象
  • 6.2 DOM介绍
  • 6.2.1 对内容进行操作
  • 6.2.2 对样式进行操作
  • 6.2.3 对属性的操作
  • 6.2.4 对类名的操作
  • 6.2.5 事件
  • 6.2.6 综合运用——制作网页轮播图效果
  • 6.2.7 获取位置和尺寸
  • 6.2.8 获取具有滚动条元素的滚动位置
  • 6.2.9 案例展示——楼层跳转效果制作
  • 6.2.10 结点的属性和方法
  • 6.2.11 事件对象
  • 6.2.12 事件流
  • 6.2.13 案例展示——移动端可拖曳轮播图展示
  • 6.3 综合练习——面向对象的打字游戏
  • 第7章 AJAX详解
  • 7.1 AJAX原理介绍
  • 7.1.1 AJAX的特点
  • 7.1.2 与传统的Web应用比较
  • 7.1.3 AJAX的工作原理
  • 7.1.4 XMLHttpRequest对象
  • 7.1.5 GET和POST的区别
  • 7.1.6 同步和异步的区别
  • 7.2 AJAX函数封装
  • 7.3 AJAX运用
  • 第8章 客户端存储及应用
  • 8.1 Cookie简介
  • 8.1.1 Cookie的作用
  • 8.1.2 Cookie的基本概念
  • 8.1.3 Cookie的用法
  • 8.1.4 Cookie的封装函数
  • 8.1.5 利用Cookie保存文字阅读器的状态
  • 8.2 IocaIStorage和sessionStorage简介
  • 8.3 使用 IocaIStorage
  • 第9章 jQuery原理及用法
  • 9.1 jQuery概述
  • 9.2 jQuery核心思想
  • 9.3 jQuery隐式循环
  • 9.4 jQuery链式调用
  • 9.5 jQuery跨平台
  • 9.6 jQuery选择器
  • 9.7 jQuery筛选
  • 9.7.1 过滤
  • 9.7.2 查找
  • 9.7.3 串联
  • 9.8 jQuery属性
  • 9.8.1 属性
  • 9.8.2 CSS类
  • 9.8.3 HTML代码/文本/值
  • 9.9 jQuery CSS
  • 9.9.1 样式
  • 9.9.2 位置
  • 9.9.3 尺寸
  • 9.10 jQuery文档处理
  • 9.10.1 内部插入
  • 9.10.2 外部插入
  • 9.10.3 包裹
  • 9.10.4 替换
  • 9.10.5 删除
  • 9.10.6 复制
  • 9.11 jQuery 事件
  • 9.11.1 页面载入
  • 9.11.2 事件处理
  • 9.11.3 事件触发
  • 9.11.4 事件委派
  • 9.11.5 事件
  • 9.12 jQuery 事件对象
  • 9.13 jQuery 效果
  • 9.13.1 基本方式
  • 9.13.2 自定义动画
  • 9.13.3 动画控制
  • 9.14 jQuery AJAX
  • 9.14.1 json 参数的选项
  • 9.14.2 AJAX的函数实现
  • 9.14.3 全局处理函数
  • 9.15 jQuery工具
  • 9.16 综合案例制作——轮播图
  • 9.17 综合案例制作——扑克牌
  • 第2部分 全栈之PHP+MySQL
  • 第10章 PHP基础
  • 10.1 PHP的使用
  • 10.2 PHP的数据类型
  • 10.3 PHP的变量
  • 10.4 PHP的常量
  • 10.5 PHP的表达式、运算符和流程控制
  • 10.6 PHP的函数
  • 10.7 PHP的类与对象
  • 10.8 PHP使用PDO连接数据库
  • 第11章 MySQL基础
  • 11.1 MySQL简介
  • 11.2 检索数据
  • 11.3 排列数据
  • 11.4 过滤数据
  • 11.5 计算字段
  • 11.6 使用函数
  • 11.7 分组数据
  • 11.8 联结表
  • 11.9 插入数据
  • 11.10 更新和删除数据
  • 11.11 创建和操作表
  • 11.12 使用视图
  • 第12章 PHP框架
  • 第3部分 全栈之框架
  • 第13章 AngularJS
  • 13.1 AnguIarJS简介
  • 13.2 AnguIarJS特性
  • 13.3 AnguIarJS核心思想
  • 13.4 AnguIarJS的优势
  • 13.5 AnguIarJS应用组成
  • 13.6 AnguIarJS环境搭建
  • 第14章 第一个应用程序
  • 14.1 AnguIarJS MVC架构
  • 14.2 AnguIarJS应用实例
  • 14.2.1 原生JavaScript实现
  • 14.2.2 AngularJS实现
  • 第15章 AngularJS模块
  • 15.1 AnguIarJS模块简介
  • 15.2 模块的优点
  • 15.3 创建模块
  • 15.4 添加控制器
  • 15.5 添加指令
  • 第16章 作用域
  • 16.1 作用域简介
  • 16.1.1 作用域的作用
  • 16.1.2 作用域概述
  • 16.2 定义作用域
  • 16.3 作用域层级
  • 第17章 控制器
  • 17.1 控制器简介
  • 17.2 控制器定义
  • 17.2.1 函数式创建
  • 17.2.2 模块化定义
  • 17.3 控制器嵌套
  • 第18章 表达式
  • 18.1 表达式概述
  • 18.1.1 表达式简介
  • 18.1.2 AngularJS表达式的特性
  • 18.2 表达式的使用
  • 18.2.1 表达式数字
  • 18.2.2 表达式字符串
  • 18.2.3 表达式对象
  • 18.2.4 表达式数组
  • 第19章 过滤器
  • 19.1 过滤器简介及其用法
  • 19.2 在HTML中使用过滤器
  • 19.2.1 currency过滤器
  • 19.2.2 lowercase/uppercase过滤器
  • 19.2.3 filter过滤器
  • 19.2.4 limitTo过滤器
  • 19.2.5 orderBy过滤器
  • 19.3 在JavaScript中使用过滤器
  • 19.4 自定义过滤器
  • 第20章 指令
  • 20.1 指令简介
  • 20.2 内置指令
  • 20.2.1 基础指令
  • 20.2.2 事件类指令
  • 20.2.3 表单类指令
  • 20.2.4 样式类指令
  • 20.2.5 DOM操作相关指令
  • 20.2.6 指令扩展
  • 20.3 自定义指令
  • 20.3.1 第一个自定义指令
  • 20.3.2 参数详解
  • 第21章 多重视图和路由
  • 21.1 路由简介
  • 21.2 安装
  • 21.3 布局
  • 21.4 配置
  • 第22章 依赖注入简介及使用
  • 第23章 服务
  • 23.1 服务概述
  • 23.2 使用服务
  • 23.2.1 $http服务
  • 23.2.2 $timeout服务
  • 23.2.3 $interval服务
  • 23.2.4 $location服务
  • 第24章 动画
  • 24.1 动画概述
  • 24.2 动画的安装与原理
  • 24.2.1 安装
  • 24.2.2 原理
  • 24.3 动画实现
  • 24.3.1 CSS 3过渡
  • 24.3.2 CSS 3动画
  • 24.3.3 JavaScript中的动画
  • 24.3.4 在定义指令中使用动画
  • 第25章 综合案例
  • 第26章 初识React
  • 26.1 前端架构的变迁
  • 26.1.1 前后端不分的时代
  • 26.1.2 后端MVC时代
  • 26.1.3 AJAX的SPA时代
  • 26.1.4 前端为主的MV*时代
  • 26.2 React简介
  • 26.3 专注于视图
  • 26.4 React解决的问题
  • 26.5 虚拟DOM机制
  • 26.5.1 虚拟DOM介绍
  • 26.5.2 虚拟DOM的意义
  • 26.6 React组件
  • 26.6.1 组件化的概念
  • 26.6.2 组件化的意义
  • 第27章 React基础
  • 27.1 React开发环境
  • 27.1.1 安装React
  • 27.1.2 浏览器端的使用
  • 27.1.3 基于Webpack工程化构建工具
  • 27.2 React组件构建
  • 27.2.1 渲染组件
  • 27.2.2 创建组件
  • 27.2.3 示例
  • 27.3 JSX简介
  • 27.3.1 JSX的由来
  • 27.3.2 JSX介绍
  • 27.3.3 使用JSX的原因
  • 27.3.4 JSX的基本原理
  • 27.4 开始使用JSX
  • 27.4.1 在浏览器中使用JSX
  • 27.4.2 基本语法
  • 27.4.3 元素类型
  • 27.4.4 元素属性
  • 27.4.5 JSX注释
  • 27.4.6 求值表达式
  • 27.5 React中的非DOM属性
  • 27.5.1 dangerouslySetInnerHTML属性
  • 27.5.2 ref属性
  • 27.5.3 key属性
  • 27.6 组件的生命周期
  • 27.6.1 初始化阶段
  • 27.6.2 运行中阶段
  • 27.6.3 销毁阶段
  • 27.7 React操作DOM
  • 27.7.1 ref获取DOM
  • 27.7.2 findDOMNode获取DOM
  • 27.8 React属性与状态
  • 27.8.1 数据流
  • 27.8.2 props属性
  • 27.8.3 状态
  • 27.9 React事件
  • 27.9.1 React事件处理
  • 27.9.2 React合成事件
  • 27.9.3 React支持事件
  • 27.9.4 事件中的this指向
  • 27.9.5 在React中使用原生事件
  • 27.9.6 对比React合成事件与JavaScript原生事件
  • 27.10 React表单
  • 27.10.1 表单类型
  • 27.10.2 无约束表单
  • 27.10.3 约束性组件
  • 27.10.4 表单控件
  • 27.11 使用CSS样式
  • 27.11.1 行内方式添加样式
  • 27.11.2 类名方式添加样式
  • 第28章 React进阶
  • 28.1 React组件组合
  • 28.1.1 组件组合
  • 28.1.2 组件包含
  • 28.2 React组件间通信
  • 28.2.1 父组件向子组件通信
  • 28.2.2 子组件向父组件通信
  • 28.3 React性能优化
  • 28.4 React动画
  • 28.5 React Router
  • 28.5.1 路由的基本原理
  • 28.5.2 React Router特性
  • 28.5.3 安装react-router-dom
  • 28.5.4 路由中的组件
  • 28.5.5 路由实例
  • 第29章 React应用实例
  • 29.1 项目介绍
  • 29.2 项目分析
  • 29.2.1 公共部分组件
  • 29.2.2 首页组件划分
  • 29.2.3 城市选择页面
  • 29.3 准备开发环境
  • 29.3.1 建立项目文件夹
  • 29.3.2 项目初始化
  • 29.3.3 安装指定npm包
  • 29.3.4 Webpack配置文件
  • 29.3.5 应用目录结构
  • 29.4 天气应用
  • 第4部分 全栈之Node.js
  • 第30章 初识Node.js
  • 30.1 Node.js简介
  • 30.2 Node.js的发展
  • 30.3 Node.js的特性
  • 30.4 Node.js的使用场景
  • 30.5 Node.js和JavaScript的区别与联系
  • 30.6 CommonJS
  • 第31章 Node.js的安装
  • 31.1 下载Node.js
  • 31.2 Node.js的版本信息
  • 31.3 Node.js的安装方法
  • 第32章 Node.js模块系统
  • 32.1 模块化编程
  • 32.2 Node.js中模块的分类
  • 32.3 模块操作
  • 32.3.1 require
  • 32.3.2 exports
  • 32.3.3 module
  • 32.3.4 module的其他API
  • 32.4 模块加载的优先级
  • 32.5 模块路径解析规则
  • 32.6 Node.js包
  • 32.6.1 包的概念
  • 32.6.2 自定义包
  • 32.6.3 包配置文件package.json
  • 第33章 Node.js包管理工具
  • 33.1 npm简介
  • 33.2 npm常见的使用场景
  • 33.3 npm常用命令
  • 33.3.1 使用npm安装模块
  • 33.3.2 全局安装与本地安装
  • 33.3.3 模块中的其他操作
  • 33.3.4 版本号
  • 33.4 向npm服务器发布自己的包
  • 第34章 Node.js全局对象
  • 34.1 Buffer类
  • 34.2 consoIe模块
  • 34.3 process对象
  • 34.4 gIobaI对象的方法
  • 34.5 魔术常量
  • 第35章 Node.js常用模块
  • 35.1 path模块
  • 35.2 chiId_process模块
  • 35.3 urI模块
  • 35.4 querystring 模块
  • 第36章 Node.js中的fs模块
  • 36.1 使用fs模块
  • 36.2 常用操作
  • 36.2.1 异步读取文件
  • 36.2.2 同步读取文件
  • 第37章 Node.js流
  • 37.1 Stream的作用
  • 37.2 读取流
  • 37.3 写入流
  • 第38章 Node.js中的http模块
  • 38.1 HTTP简介
  • 38.2 http模块
  • 第39章 Node.js实战之静态服务器
  • 39.1 非目录文件处理
  • 39.2 目录处理
  • 39.3 实现静态服务器
  • 第40章 Node.js实战之爬虫系统
  • 40.1 爬虫系统流程
  • 40.2 布隆过滤器
  • 40.3 数据存储设计
  • 40.4 爬虫主程序
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

机械工业出版社

机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。