JS写游戏
最近在看萧井陌的视频。感觉一些东西挺有意思的,尤其是解决问题的过程,以及一个好程序应该改进的地方。
萧大的GITHUB:github.com/guaxiao/gua.game.js
视频:https://space.bilibili.com/39066904#!/
拖拽
键盘事件监听
//注册键盘监听事件
window.addEventListener('keydown',function(e){
var thisKey = e.key;
)}
逻辑判断
let a = 1,
b,
c = undefined,
d = null ,
f = 'null' ,
g = false,
h = 'false' let aa = {
one : a && 11, //
two : b && 22, //undefined
three : c && 33, //undefined
four : d && 44, //null
five : f && 55, //
six : g && 66, //false
seven : h && 77 //
}
console.log(aa.one,aa.two,aa.three,aa.four,aa.five,aa.six,aa.seven)
let bb = {
one : a || 11, //
two : b || 22, //
three : c || 33, //
four : d || 44, //
five : f || 55, //"null"
six : g || 66, //
seven : h || 77 //"false"
}
console.log(bb.one,bb.two,bb.three,bb.four,bb.five,bb.six,bb.seven)
one : a && 11,
当a为真时,one的属性值为 11
当a为undefined时,one的属性值为undefined
当a为null时,one的属性值为null
当a为false时,one的属性值为false
当a为字符串时,one的属性值为11
two : a || 11,
当a为真时,two的属性值为a的值
当a为null,undefined,false时,two属性值为11
//优先级()> && > ||
let a = 11 && 22 || 33 //22
b = (11 && 22) || 33 //
c = false && 22 || 33 //
d = 11 || 22 && 33 //
e = false || 22 && 33 //
f = (11 || 22) && 33 //
g = (11 && 22) && 33 //
h = false && 22 && 33 //false
i = 11 && 22 || 33 && ( 44 && 55) //
j = (11 && 22) && 33 || 44 && 55 //
k = (11 && 22) && (33 || 44) && 55 && false //false
console.log(a,b,c,d,e,f,g,h,i,j,k)
计算的优先级
括号 > && > ||
在确立优先级的情况下从左往右计算
三元运算符 ?:
作用是判断?前的语句是否为真,为真则执行中间的语句,否则执行后面的语句
log("你是人是鬼?") ? alert("你是人") : alert("你是鬼!")
图片的预加载
先载入图片,这样的话,就好用很多
参考http://www.cnblogs.com/v10258/p/3376455.html
JS写游戏的更多相关文章
- 用JS写了一个打字游戏,反正我是通不了关
今天想写个简单的游戏, 打字游戏好像都没写过, 那么就写打字游戏吧, gamePad包含了关卡的信息, 可以用来调整给个关卡字符下落的速度: getRandom函数会返回一个字符对象, 这个对象包含了 ...
- JS写小游戏(一):游戏框架
前言 前一阵发现一个不错的网站,都是一些用html5+css+js写的小游戏,于是打算学习一番,写下这个系列博客主要是为了加深理解,当然也有一些个人感悟,如果英文好可以直接Click Here. 概述 ...
- 原生js写的贪吃蛇网页版游戏特效
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <bo ...
- 分享:计算机图形学期末作业!!利用WebGL的第三方库three.js写一个简单的网页版“我的世界小游戏”
这几天一直在忙着期末考试,所以一直没有更新我的博客,今天刚把我的期末作业完成了,心情澎湃,所以晚上不管怎么样,我也要写一篇博客纪念一下我上课都没有听,还是通过强大的度娘完成了我的作业的经历.(当然作业 ...
- JS小游戏:贪吃蛇(附源码)
javascript小游戏:贪吃蛇 此小游戏采用的是面向对象的思想,将蛇,食物,和游戏引擎分为3个对象来写的. 为方便下载,我把js写在了html中, 源码中暂时没有注释,等有空我在添加点注释吧. 游 ...
- 一个js小游戏----总结
花了大概一天左右的功夫实现了一个js小游戏的基本功能,类似于“雷电”那样的小游戏,实现了随即怪物发生器,碰撞检测,运动等等都实现了,下一个功能是子弹轨迹,还有其他一些扩展功能,没有用库,也没有用web ...
- js canvas游戏初级demo-躲避障碍物
在线演示地址 http://200ok.fun:3100/html/game_demo.html 继上次js canvas游戏初级demo-上下左右移动(https://www.cnblogs.com ...
- 【微信小程序项目实践总结】30分钟从陌生到熟悉 web app 、native app、hybrid app比较 30分钟ES6从陌生到熟悉 【原创】浅谈内存泄露 HTML5 五子棋 - JS/Canvas 游戏 meta 详解,html5 meta 标签日常设置 C#中回滚TransactionScope的使用方法和原理
[微信小程序项目实践总结]30分钟从陌生到熟悉 前言 我们之前对小程序做了基本学习: 1. 微信小程序开发07-列表页面怎么做 2. 微信小程序开发06-一个业务页面的完成 3. 微信小程序开发05- ...
- Node.js写文件的三种方法
Node.js写文件的三种方式: 1.通过管道流写文件 采用管道传输二进制流,可以实现自动管理流,可写流不必当心可读流流的过快而崩溃,适合大小文件传输(推荐) var readStream = fs. ...
随机推荐
- (博弈 sg入门)kiki's game -- hdu -- 2147
链接: http://acm.hdu.edu.cn/showproblem.php?pid=2147 题意: 在一个n*m的棋盘上,从 (1,m),即右上角开始向左下角走. 下棋者只能往左边(lef ...
- ZOJ3714:Java Beans
There are N little kids sitting in a circle, each of them are carrying some java beans in their hand ...
- Spring AOP 自定义注解获取http接口及WebService接口入参和出参
注解方法实现过程中可以采用如下获取方式:—以下为例 HttpServletRequest request = ((ServletRequestAttributes) RequestContextHo ...
- winform 开发中 把耗时操作 封装起来 异步执行(.net 4.0)
.先定义一个 BackgroundTask.cs 代码如下: public class BackgroundTask { private static WaitDialogForm LoadingDl ...
- 使用Team Explorer Everywhere (TEE) 2015 SDK获取团队项目的签入策略
TFS的代码签入策略与IDE工具紧密相关,例如Visual Studio中设置的签入策略,只会影响Visual Studio的团队资源管理器:如果需要在Eclipse的TEE中启用签入策略,你还需要在 ...
- linux free命令下 cached占用很大
# 背景 使用free -h命令,展示如下: # 解决方法 先执行sync命令,同步数据 然后执行 echo 1 > /proc/sys/vm/drop_caches echo 2 > / ...
- asp.net——上传图片生成缩略图
上传图片生成缩略图,原图和缩略图地址一样的时候缩略图会把原图覆盖掉 /// <summary> /// 生成缩略图 /// </summary> /// <param n ...
- Spring jndi数据源配置方法
xml配置: <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverMana ...
- iOS 错误:… is being deallocated while key value observing are still registered with it
这个错误从字面上来看就是有一个实例由于被observing而无法被释放. 具体原因可能是该对象添加了一个oberver.所以释放的时候要先取消observer. 具体方法是在 dealloc 方法中: ...
- django系列5.1--ORM对数据库的操作
Django---ORM数据库操作(图书管理系统基本实例) 一.基本知识 MVC模式(Model–view–controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Mo ...