互联网前端开发班-JS开发实战New

 

课程周期:

40课时

培训费用:

3800 

使用教材:

内部实训教材

教材费用:

附送配套讲义和教材

学员收益:

短期掌握JS开发核心技术



第一阶段  JS基础

JS入门:事件、原理、属性、样式、函数、if判断 

JS入门:style和行间样式、函数传参、属性操作两种方式 

字符串和变量、字面量和变量 

 

提取行间事件、onloadbyTagName、数组 

循环、全选、选项卡、innerHTML、字符串连接 

 

调试工具的使用、如何调试JS 

变量类型、typeofJS常见类型 

类型转换、parseIntNaN、隐式转换 

作用域、闭包、命名规范、运算符、流程控制 

变量遮蔽 

JS中的随机数、随机颜色、随机范围、随机不重复 

 

函数返回值 

深入理解函数返回值 

定时器:intervaltimeout、时钟、QQ资料框、自动播放选项卡、京东商城侧边栏 

arguments、字符串操作、数组操作、Json 

循环外i的问题、函数定义和调用的区别、不变的变量 

 

DOM操作基础:创建、添加、删除 

BOM基础:窗口操作、UAlocation 

BOM应用:滚动、scrollTopoffsetclientHeight、浏览器类型检测 

事件对象:冒泡、clientXkeyCodectrl/alt/shift、默认行为、拖拽 

 

QQ邮箱闪烁提示、回放路径的拖拽 

树形菜单、多级右键菜单

 

第二阶段  JS中级开发+案例实战

批量设置样式:jsoncssTextwith 

locationhashquery的处理,刷新保存页码 

Date对象应用:setFullYear/Month等,时间戳、倒计时 

Date高级应用 

闭包的应用、封闭命名空间 

ajax无刷新数据加载:创建、发送、接收、字符集和缓存 

DOM应用:firstChild/lastChildnextSibling/previousSibling 

操作属性的第三种方式、自定义属性的获取、src的相对路径 

offsetParent、计算元素的页面绝对位置 

图片延迟加载——迅雷 

简易瀑布流——花瓣 

横向瀑布流——百度 

DOMinnerHTMLinnerHTMLbug 

天猫、淘宝吸顶导航条 

天猫、京东placeholder输入框 

永远在页面中的右键菜单、提示图片 

图片预加载、Image对象的使用 

Image对象批量加载 

运动基础、匀速运动、运动框架、侧边栏、淡入淡出 

缓冲运动、页面提示框 

多物体运动框架、万能运动框架、链式运动框架、完美运动框架 

布局转换、淘宝幻灯片 

运动应用:划动提示层、百度百科数字框、新浪滚动微博 

永远在页面中放大的图片 

无缝滚动 

手风琴幻灯片、淘宝网无缝滚动幻灯片 

this的用法、完美拖拽 

完美封装可重用代码 

完美拖拽、吸附拖拽、带框拖拽 

程序思想——如何找思路,如何找规律,如何思考 

碰撞检测、模拟窗口拖拽大小 

窗口拖拽大小的封装和重用

自定义滚动条、鼠标滚轮 

事件绑定、DOM事件流 

cookie基础

ajax高级应用:用户注册和登录、表单提交 

后台接口的使用、接口文档 

编写AJax的基本步骤 

Jsonp跨域的方法——百度下拉提示 

script标签的怪异特性、callback的使用 

Jsonp标签的管理 

封装可重用的Jsonp方法 

ajax制作简易新浪微博:后台、接口、分页、顶、页码 

其他常见数据格式及用法:CSVXML 

 

JS中的预解析机制、script出错时的处理机制 

预解析相关面试题 

递归及其各种应用 

递归相关面试题 

递归的性能问题、递归的优化 

栈溢出的原因和处理 

 

引用、复制 

JS中的异常:try...catch的使用 

try的嵌套和性能问题 

抛出异常、Exception对象、异常和返回值的区别及用途 

JS变量生存周期、垃圾回收机制 

闭包与JS垃圾回收 

闭包的用法、保存i的值 

 

JS性能优化——健壮性、维护性、性能的平衡 

性能瓶颈的识别——性能检测工具的使用:Chrome profilesYSlow 

JS阻塞加载、图片延迟加载、网络性能优化、压缩、CDN的使用 

JS执行性能优化:DOM操作、循环、数组优化、局部变量、evalparseInt、系统函数、字符串连接、正则等 

 

实例:颜色选择器组件 

实例:输入字数统计 

 

正则表达式:RegExp对象、search方法、忽略大小写 

match方法和全局匹配、量词的问题、replace方法 

字符类、转义字符、行首行为、中文、单词边界、括号 

正则应用:可重用的表单校验 

自动表单校验、批量表单校验 

 

表格操作:tBodiestHeadtFootrowscells 

表格搜索、排序 

自定义表单组件 

DOM文本节点:创建、兼容、应用 

firstChild怪异问题、childNodes的问题 

实例:google日历 

 

domReady事件:优点、DOMContentLoadeddeferonload 

事件队列、封装ready事件函数 

事件委托(事件代理):冒泡的使用、srcElement属性、target属性、this的检测 

call的使用——解决this指向问题 

mouseleave事件——作用、封装,彻底解决mouseout冒泡的问题 

 

运动高级:弹性运动、碰撞运动 

弹性应用:滑动导航

 

第四阶段  JS面向对象

面向对象回顾:什么是面向对象、对象的组成、OOP的特点、this的本质、Object对象 

工厂方式构造对象、原型(prototype)、混合法构造JS对象、实例:面向对象的选项卡

JS算法基础:时间复杂度和空间复杂度 

数据结构基础:线性和随机、线性表、O表示法、数据结构基本操作 

线性表和排序:4大排序算法、适用范围、蜕变和劣化、移动操作开销 

树和排序:树的查找、添加和平衡 

散列:空间换取时间、空间利用率和算法效率 

图:路径算法、预处理和随机处理 

 

模块的规划、接口 

模块的加载、依赖、循环依赖 

模块作用域和export 

script加载和同步、请求合并、压缩代码 

模块的重用和冲突 

 

MVC基础:3层模型和耦合度 

耦合的问题和消除 

数据独立性、独立数据模型 

 

设计模式:优点、常见模式 

自定义事件、事件队列管理、事件的传递、事件对象和参数、监听模式的问题 

数据队列的管理、反向监听和解耦合、模块独立性

 

 

注:本课程需要学员有1年以上JAVA或C语言工作经验或相应基础

零基础学员请参考 “HTML5次时代互联网开发大师班”