第15/90步《前端篇》第2章 编写一个简单的HTML5小游戏:打造游戏界面 第6课

简介: 今天学习《前端篇》第2章 编写一个简单的HTML5小游戏:打造游戏界面 第6课 绘制分界线,这节课复习一下之前已经练习过的 lineTo、moveTo 方法,在实践中学习 JS 语言在逻辑控制语句、函数、作用域、闭包等方面的基础知识和技能。

image.png

今天学习《前端篇》第2章 编写一个简单的HTML5小游戏:打造游戏界面 第6课 绘制分界线,这节课复习一下之前已经练习过的 lineTo、moveTo 方法,在实践中学习 JS 语言在逻辑控制语句、函数、作用域、闭包等方面的基础知识和技能。


学习目标


  • 分别通过lineTo和渐变色绘制分界线
  • 学习CSS 颜色值有哪些格式
  • 使用函数绘制间隔效果
  • 学习如何定义和使用函数
  • 使用循环绘制分界线
  • 拓展:使用比较运算符、if控制语句和算术运算符
  • 拓展:JS的5种循环控制语句
  • 拓展:如何理解JS的作用域链与闭包
  • 拓展:如何使用集合对象 Map 与 Set

主要知识点/技能点


  • 绘制的先后顺序,决定了画布中对象的上下遮挡关系。

  • 其实 CanvasGradient 对象不仅可以应用于填充属性 fillStyle,还可以应用于线条属性 strokeStyle。

  • #ffffff00是一个十六进制的 rgba 颜色值,最后的00代表透明。

  • RGB 颜色:格式为 RGB(红,绿,蓝),每个颜色值在 0~255 之间。

  • RGBA 颜色:格式为 RGBA(红,绿,蓝,Alpha),与 RGB 类似,只是多了一个 Alpha 通道,Alpha 的取值范围是 0.0~1.0。

  • 函数是程序中可以重复使用的代码块。函数以关键字 function 声明,每个函数可以有 0 个、1个或多个参数,函数可以有返回值,也可以不返回,参数和返回值的类型都不需要在函数体中声明。


  • 在调用函数时,可以向其传值,这些值被称为实参。

  • 函数要尽量保持独立性,函数的运行最好不依赖外部任何变量,所有函数执行时需要用到的数据全部通过参数传递进来。

  • JS 中有两种定义函数的方式:函数声明和函数表达式。

  • 在非箭头函数中,arguments 表示函数实参,arguments.callee 表示函数本身。

  • arguments 作为一个实参类数组对象,同时也是 object 类型,它有一个 callee 属性,通过 arguments.callee 可以访问函数本身。

  • JS 函数即使不声明形参,也可以向它传递参数,这时候在函数内部要访问实参,就需要发挥 arguments 的作用了。

  • 如果开发者不确定参数个数,或者函数需要传递不确定数目的参数,在 ES6 中可以声明 rest 参数。

  • 在 JS 语言内,while 循环会在指定条件为真时循环执行代码块。

  • for 循环是 JS 中最常使用的循环。

  • 在 JS 中,主要有 7 种比较运算符,主要有 以下7 种算术运算符

  • 如果花括号内代码只有一句,可以省略花括号。

  • 在 JS 中,包括 for、while 、do while 、for in 和for of 共5 种循环控制语句。

  • JS 作用域是可以嵌套的,从而形成一个作用域链条。变量可以沿着作用域链向上追溯,即子作用域可以访问父作用域,继而向上还可以访问祖作用域,直到全局作用域为止。

  • 闭包等于一个函数加上本来不属于这个函数,但这个函数又能调用的变量或常量。如果一个函数可以访问另一个作用域中的变量,那么前者可能就是一个闭包。

  • Set 是一组 key 的集合,不存储 value,只存储key,并且 key 不能重复。

  • Map 是 ES6 内置的一组键值对数据结构,Map优势在于具有极快的查询速度。

实践疑难点


  • 要注意闭包捕获的变量的值。

小结


这节课主要实现了对分界线的绘制,在绘制实践中练习了 JS 语言的逻辑控制语句,学习了函数、闭包和作用域链等相关概念,这些都是 JS 语言的基础概念,特别是闭包与作用域链,必须多加练习,将它们彻底搞明白。

目录
相关文章
用html+javascript打造公文一键排版系统1:设计界面
用html+javascript打造公文一键排版系统1:设计界面
|
3天前
|
人工智能 前端开发 JavaScript
前端基础之HTML
Web1.0、Web2.0 和 Web3.0 标志着互联网发展的三个阶段。Web1.0(静态互联网,1990年代初至2000年代初)以静态内容和单向信息流为主,用户仅能浏览。Web2.0(互动互联网,2000年代初至2010年代初)引入了用户生成内容和社交网络,内容动态且互动性强。Web3.0(语义互联网,2010年代至今)强调语义化、个性化、智能化及去中心化,结合AI、区块链等技术,提供沉浸式体验。HTTP和HTML作为互联网基础协议和技术,在各阶段不断演进,共同推动了现代互联网的发展。
前端基础之HTML
|
1月前
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
37 6
|
1月前
|
移动开发 前端开发 JavaScript
前端实训,刚入门,我用原生技术(H5、C3、JS、JQ)手写【网易游戏】页面特效
于辰在大学期间带领团队参考网易游戏官网的部分游戏页面,开发了一系列前端实训作品。项目包括首页、2021校园招聘页面和明日之后游戏页面,涉及多种特效实现,如动态图片切换和人物聚合效果。作品源码已上传至CSDN,视频效果可在CSDN预览。
45 0
|
1月前
|
前端开发 API
前端界面生成PDF并导出下载
【10月更文挑战第21天】利用合适的第三方库,你可以在前端轻松实现界面生成 PDF 并导出下载的功能,为用户提供更方便的文档分享和保存方式。你还可以根据具体的需求进一步优化和定制生成的 PDF 文件,以满足不同的业务场景要求。
|
3月前
|
Web App开发 存储 移动开发
前端基础(十七)_HTML5新特性
本文概述了HTML5的关键新特性,包括canvas图形绘制、多媒体的`video`和`audio`元素、本地存储功能、语义化标签(如`header`、`footer`、`nav`等)及其新增表单控件和属性(如`url`、`email`、`date`类型输入框等)。这些改进增强了网页的功能性和用户体验。
51 1
前端基础(十七)_HTML5新特性
|
2月前
|
XML 前端开发 JavaScript
前端开发进阶:从HTML到React.js
【10月更文挑战第9天】前端开发进阶:从HTML到React.js
|
2月前
|
前端开发 JavaScript 数据安全/隐私保护
【前端基础篇】HTML零基础速通2
【前端基础篇】HTML零基础速通
28 2
|
2月前
|
Web App开发 移动开发 前端开发
【前端基础篇】HTML零基础速通1
【前端基础篇】HTML零基础速通
36 1
|
3月前
|
移动开发 JavaScript 数据管理
HTML5 拖放在游戏中的应用
HTML5的拖放功能在游戏开发中广泛应用,尤其在创建交互式网页游戏时。它支持多种场景,如拖动角色或物品、选择和装备物品、拼图或配对游戏以及自定义界面布局。通过简单的HTML和JavaScript代码,可实现流畅的拖放交互,并提供视觉反馈,增强用户体验。此外,还需考虑设备兼容性和数据管理,确保游戏在不同设备和浏览器上都能良好运行。总之,HTML5拖放功能使网页游戏更生动有趣。