顶部
收藏

JavaScript实战教程


作者:
邵山欢
定价:
49.50元
ISBN:
978-7-04-050910-6
版面字数:
420.000千字
开本:
16开
全书页数:
暂无
装帧形式:
平装
重点项目:
暂无
出版时间:
2019-01-21
读者对象:
高等职业教育
一级分类:
计算机大类
二级分类:
计算机类
三级分类:
软件技术

本书是高等教育出版社与爱前端科技有限公司(以下简称爱前端)联合出品的程序设计类实战教材。本书以爱前端多年授课讲义为蓝本,由具有丰富开发和授课经验的爱前端创始人邵山欢亲自编写。本书以互联网企业实际用人要求为导向,总结近几年国家应用型本科与示范性高职院校相关专业教学改革经验及爱前端在前端开发培训领域多年经验编写而成。

本书介绍JavaScript语言核心和DOM相关内容,全书分为11章。第1章~第7章介绍JavaScript语言核心,包括JavaScript简介、开发环境、语法基础、选择语句、循环语句、函数、数组和对象及正则表达式等内容;第8章~第11章介绍DOM,包括DOM节点树、网页特效开发、DOM节点、高级事件等内容。

全书以“通过例子来教学,通过动手来学习”为宗旨,每章都有大量的演示案例和实战案例,通过这些案例,学生可以在短时间内掌握JavaScript编程,并且不会感到枯燥。每章最后还附有习题,习题都是精挑细选而来,学生通过习题可以进一步巩固本章所学知识,并探索学习新的知识。

本书配套建设了微课等丰富的数字化学习资源,以及Abook数字课程,具体的使用方法详见“Abook数字课程”页。

本书可作为软件技术专业及相关专业的前端开发课程配套教材,也可作为前端开发爱好者的学习和参考用书。

  • 前辅文
  • 第1章 JavaScript简介和开发环境
    • 1.1 JavaScript的功能演变
      • 1.1.1 JavaScript的诞生
      • 1.1.2 JavaScript开发网页特效
      • 1.1.3 JavaScript制作网页广告
      • 1.1.4 Ajax使JavaScript重获新生
      • 1.1.5 前端三层格局的确立
      • 1.1.6 Node.js的诞生
      • 1.1.7 B/S架构应用和Angular、React及Vue
      • 1.1.8 Web APP和微信小程序
    • 1.2 JavaScript的组成部分
      • 1.2.1 语言核心
      • 1.2.2 DOM
      • 1.2.3 BOM
    • 1.3 JavaScript开发工具
    • 1.4 编写一个JavaScript程序
      • 1.4.1 JavaScript在HTML中的书写位置
      • 1.4.2 保存为JS文件
    • 1.5 使用chrome浏览器的控制台
      • 1.5.1 console.log()语句
      • 1.5.2 使用控制台排查错误
      • 1.5.3 REPL环境
    • 1.6 书写高可读性代码
      • 1.6.1 语句末尾添加分号
      • 1.6.2 正确的代码缩进
      • 1.6.3 使用注释
    • 1.7 手册和文档
    • 1.8 本章习题
  • 第2章 基本程序设计
    • 2.1 变量
      • 2.1.1 引言
      • 2.1.2 变量的定义和赋值
      • 2.1.3 JavaScript是动态类型语言
      • 2.1.4 变量值的更改
      • 2.1.5 变量的命名规范
      • 2.1.6 undefined
      • 2.1.7 变量声明提升
    • 2.2 基本数据类型
      • 2.2.1 使用typeof操作符检测数据类型
      • 2.2.2 数字型
      • 2.2.3 字符串型
      • 2.2.4 布尔型
      • 2.2.5 undefined型
    • 2.3 运算符
      • 2.3.1 数学运算符
      • 2.3.2 比较运算符
      • 2.3.3 逻辑运算符
      • 2.3.4 赋值运算符
    • 2.4 实战案例:计算复杂数学算式
      • 2.4.1 案例描述
      • 2.4.2 幂和平方根的计算
      • 2.4.3 案例代码
    • 2.5 实战案例:小小加法计算器
      • 2.5.1 案例描述
      • 2.5.2 使用输入语句接收用户输入的值
      • 2.5.3 将字符串转换为数字
      • 2.5.4 常见错误
    • 2.6 实战案例:摄氏温度转为华氏温度
      • 2.6.1 案例描述
      • 2.6.2 四舍五入
      • 2.6.3 案例代码
    • 2.7 实战案例:计算三位数各个数位的和
      • 2.7.1 案例描述
      • 2.7.2 算法
      • 2.7.3 案例代码
    • 2.8 本章习题
  • 第3章 选择语句
    • 3.1 引言
    • 3.2 if语句
      • 3.2.1 基本用法
      • 3.2.2 举例:根据年龄判断是否可以申领驾照
      • 3.2.3 省略else
      • 3.2.4 单行if-else语句
    • 3.3 多分支if语句
      • 3.3.1 基本用法
      • 3.3.2 “否则如果”简介
    • 3.4 实战案例:BMI指数计算
      • 3.4.1 案例描述
      • 3.4.2 案例分析
      • 3.4.3 案例代码
    • 3.5 if语句的嵌套
    • 3.6 实战案例:游乐园门票价格计算
      • 3.6.1 案例描述
      • 3.6.2 案例分析
      • 3.6.3 案例代码
    • 3.7 switch语句
      • 3.7.1 基本用法
      • 3.7.2 更灵活的switch写法
      • 3.7.3 常见错误
    • 3.8 三元运算
    • 3.9 短路计算实现条件分支
    • 3.10 本章习题
  • 第4章 循环语句
    • 4.1 引言
    • 4.2 for循环语句
      • 4.2.1 基本用法
      • 4.2.2 for循环执行原理
      • 4.2.3 精确遍历:for循环
    • 4.3 累加器和累乘器
      • 4.3.1 累加器
      • 4.3.2 累乘器
    • 4.4 循环嵌套
    • 4.5 穷举法
    • 4.6 实战案例:水仙花数
    • 4.7 实战案例:寻找质数
    • 4.8 实战案例:寻找完美数
    • 4.9 while循环语句
      • 4.9.1 语法
      • 4.9.2 防止死循环
      • 4.9.3 while(true)和break语句
    • 4.10 实战案例:猜数字小游戏
      • 4.10.1 案例描述
      • 4.10.2 随机数的生成
      • 4.10.3 代码实现
    • 4.11 do-while循环语句
      • 4.11.1 基本用法
      • 4.11.2 举例:生成不都为0的两个变量
    • 4.12 continue语句
      • 4.12.1 基本用法
      • 4.12.2 使用label命名循环
      • 4.12.3 简化寻找质数程序
    • 4.13 本章习题
  • 第5章 函数
    • 5.1 引言
    • 5.2 函数的定义和调用
      • 5.2.1 函数的命名
      • 5.2.2 形式参数
      • 5.2.3 函数体
      • 5.2.4 调用函数
      • 5.2.5 函数的返回值
    • 5.3 实战案例:哥德巴赫猜想
      • 5.3.1 案例描述
      • 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 外部js文件定义的函数不会提升
    • 5.7 变量作用域
      • 5.7.1 局部变量
      • 5.7.2 全局变量
      • 5.7.3 作用域链
    • 5.8 闭包
    • 5.9 递归
    • 5.10 实战案例:斐波那契数列
    • 5.11 IIFE
    • 5.12 本章习题
  • 第6章 数组和对象
    • 6.1 引言
    • 6.2 数组的定义和访问数组项
      • 6.2.1 定义数组
      • 6.2.2 访问数组项
      • 6.2.3 数组项的更改
      • 6.2.4 JavaScript没有下标越界错误
    • 6.3 数组的遍历
    • 6.4 数组的常用方法
      • 6.4.1 push()、pop()、unshift()、shift()方法
      • 6.4.2 splice()方法
      • 6.4.3 slice()方法
      • 6.4.4 concat()方法
      • 6.4.5 join()方法
      • 6.4.6 reverse()方法
    • 6.5 实战案例:数组常见算法
      • 6.5.1 寻找数组最大值和最小值
      • 6.5.2 数组去重
      • 6.5.3 数组交集和差集
      • 6.5.4 扁平化数组
    • 6.6 实战案例:多种方法实现数组排序
      • 6.6.1 sort()方法
      • 6.6.2 冒泡排序
      • 6.6.3 二分排序
    • 6.7 对象
      • 6.7.1 初识对象
      • 6.7.2 对象的优点
      • 6.7.3 JSON
      • 6.7.4 复杂对象
      • 6.7.5 对象的遍历
      • 6.7.6 方法
    • 6.8 基本类型值和引用类型值
      • 6.8.1 基本类型值
      • 6.8.2 引用类型值
    • 6.9 实战案例:浅克隆和深克隆
      • 6.9.1 浅克隆
      • 6.9.2 深克隆
    • 6.10 本章习题
  • 第7章 字符串和正则表达式
    • 7.1 引言
    • 7.2 字符串的常用属性和方法
      • 7.2.1 length属性
      • 7.2.2 charAt()方法
      • 7.2.3 indexOf()方法
      • 7.2.4 slice()、substring()、substr()方法
      • 7.2.5 toLowerCase()、toUpperCase()方法
      • 7.2.6 split()方法
    • 7.3 实战案例:字符串常见算法
      • 7.3.1 举例:字符串倒置
      • 7.3.2 举例:字符串循环右移
      • 7.3.3 举例:将每个单词首字母变为大写
      • 7.3.4 举例:寻找最长连续重复字母
    • 7.4 正则表达式基础
      • 7.4.1 正则表达式
      • 7.4.2 模式
      • 7.4.3 字符串相关方法
      • 7.4.4 正则表达式相关方法
      • 7.4.5 字符范围
      • 7.4.6 量词
    • 7.5 实战案例:正则表达式常见算法
      • 7.5.1 举例:验证手机号码
      • 7.5.2 举例:过滤字符串首尾空白
      • 7.5.3 举例:美元换算人民币
      • 7.5.4 举例:给数字加千分符
    • 7.6 本章习题
  • 第8章 DOM初步
    • 8.1 引言
    • 8.2 DOM节点树
    • 8.3 HTML元素的方法
      • 8.3.1 getElementById()
      • 8.3.2 getElementsByTagName()
      • 8.3.3 getElementsByClassName()
      • 8.3.4 querySelector()和querySelectorAll()
    • 8.4 HTML元素的操作
      • 8.4.1 改变内部文字
      • 8.4.2 改变标签的属性
      • 8.4.3 改变类名
      • 8.4.4 改变CSS样式
    • 8.5 实战案例:表格隔行变色
    • 8.6 事件监听
    • 8.7 实战案例:鼠标触碰图片切换
    • 8.8 本章习题
  • 第9章 网页特效开发
    • 9.1 实战案例:简易轮播图
      • 9.1.1 信号量编程思维
      • 9.1.2 HTML和CSS布局
      • 9.1.3 案例代码
    • 9.2 批量添加监听
      • 9.2.1 实现批量添加监听
      • 9.2.2 序号问题
    • 9.3 实战案例:Tab栏特效
      • 9.3.1 案例描述
      • 9.3.2 案例分析
      • 9.3.3 案例代码
    • 9.4 实现运动
      • 9.4.1 定时器
      • 9.4.2 使用定时器实现运动
    • 9.5 实例学习:无缝连续滚动
      • 9.5.1 实现机理
      • 9.5.2 布局和样式
      • 9.5.3 JavaScript代码实现
      • 9.5.4 鼠标触碰运动暂停
    • 9.6 本章习题
  • 第10章 DOM节点
    • 10.1 nodeType
    • 10.2 节点属性
    • 10.3 节点关系
      • 10.3.1 子节点
      • 10.3.2 父节点
      • 10.3.3 兄弟节点
    • 10.4 节点操作
      • 10.4.1 创建节点
      • 10.4.2 删除节点
      • 10.4.3 移动节点
      • 10.4.4 克隆节点
    • 10.5 实战案例:九九乘法表
    • 10.6 实战案例:万年历
      • 10.6.1 案例描述
      • 10.6.2 案例分析
      • 10.6.3 认识Date对象
      • 10.6.4 案例代码
    • 10.7 本章习题
  • 第11章 高级事件
    • 11.1 事件流
      • 11.1.1 冒泡阶段和捕获阶段
      • 11.1.2 DOM0级事件监听
      • 11.1.3 DOM2级事件监听
      • 11.1.4 事件监听的移除
    • 11.2 事件对象
      • 11.2.1 事件对象概述
      • 11.2.2 event.target属性
    • 11.3 事件委托
      • 11.3.1 原理
      • 11.3.2 需要事件委托的场景
    • 11.4 阻止事件继续传播
      • 11.4.1 概念
      • 11.4.2 举例:悬浮层
    • 11.5 鼠标的位置
      • 11.5.1 鼠标位置属性
      • 11.5.2 event.offsetX/Y属性
      • 11.5.3 event.clientX/Y属性
      • 11.5.4 event.pageX/Y属性
      • 11.5.5 嵌套盒模型的鼠标位置offsetX/Y的问题
    • 11.6 实战案例:购物商城放大镜效果
      • 11.6.1 放大镜实现原理
      • 11.6.2 鼠标位置的获得
      • 11.6.3 代码实现
    • 11.7 拖拽
      • 11.7.1 拖拽的实现原理
      • 11.7.2 代码实现
    • 11.8 鼠标滚轮事件
    • 11.9 实战案例:盒子的滚动条
      • 11.9.1 滚动条的实现原理
      • 11.9.2 案例代码
    • 11.10 本章习题

本课程从零基础开始,由浅入深,从基础到高级,配合大量实践案例,带领学习者一步一步学会JavaScript开发的实用技术。课程以“通过例子来教学,通过动手来学习”为宗旨,课程资源包括微课、教学课件、授课计划、学习指南、习题库与习题答案、案例源代码、实训任务单等,并且每章都有大量的演示案例和实战案例,通过这些案例,学生可以在短时间内学会JavaScript编程,享受编程的乐趣。

相关图书