JS高级—贪吃蛇游戏

贪吃蛇游戏——

分析

我们可以将整个游戏中的内容抽象成三个对象

  • 游戏对象Game
  • 蛇对象Snake
  • 食物对象Food
食物对象Food
  • 创建Food的构造函数,并设置属性

    • x
    • y
    • width
    • height
    • color
  • 通过原型设置方法

    • render随机创建一个食物对象并输出到map上
  • 自调用函数进行封装,通过window暴露Food对象

蛇对象Snake
  • 创建Snake的构造函数,并设置属性
    • width
    • height
    • body
    • direction
  • 通过原型设置方法
    • render随机创建一个蛇对象输出在map上
  • 通过自调用函数进行封装,通过window暴露Snake对象
游戏对象Game
  • 创建Game的构造函数
    • food
    • snake
    • map
  • 通过原型设置方法
    • start 开始游戏,绘制所有的游戏对象,渲染食物对象和蛇对象
  • 通过自调用函数进行封装,widow暴露Game对象
化简
  • 如果是单独的js文件,就会发送多次请求,会消耗事件
  • 可以将所有的js打包成为一个js文件
  • 将js进行打包压缩
    • 在线压缩工具
自调用函数作用域
  • 为了不添加全局变量污染,就需要使用匿名函数,自调用函数IIFE,关住作用域

    • (将所有的函数写进来)()
    • 如何在外面调用IIFE中的函数,我们使用window对象暴露Food对象
  • 问题

    • 必须要添加;否则报错
  • 参数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值