
JaveScript
SkyXU123123
性格开朗、热爱学习的80后进步青年!
展开
-
vscode 直接调试 ts 文件
1、新建一个文件夹”ts-learn”,并建立二级目录src(用于存放ts文件)和dist(存放编译后的js文件)2、cd进入ts-learn目录3、安装typescript依赖npm install typescript --save-dev4、安装ts-nodenpm install ts-node --save-dev5、在根目录执行tsc --init生成tsconfig.json,并修改为下面这样:{ "compilerOptions": { "modul原创 2021-08-04 16:24:23 · 3726 阅读 · 0 评论 -
node.js express 跨域访问
node.js express 跨域访问原创 2020-10-15 15:45:56 · 307 阅读 · 0 评论 -
斗地主基本牌型判定
斗地主基本牌型判定原创 2020-10-15 15:44:47 · 521 阅读 · 0 评论 -
2048小游戏开发
2048小游戏开发记得14年的时候吧,2040小游戏非常火爆,很多公司也做了个“升级版”,当时我们是使用cocos2d-x(c++)引擎进行开发的,各种换皮玩法。不过由于当时我也是个游戏开发新手,做出来的bug不少。这游戏虽然看着简单玩着也简单,但开发起来发现难点还是有的,比如cell移动动画,必须保证可以快速不间断的操作还得保证cell移动的位置都正确,还要保证新出现的cell位置正确。现在我们来用cocoscreator引擎实现一遍,顺便优化一下逻辑。一、主要逻辑我们通过维护两个4x4的数组来原创 2020-05-13 19:55:26 · 1447 阅读 · 0 评论 -
uint8 Array和Base64互转
转自 stackoverflow最近在做截图上传时需要数据转换,网上找的解决方案记录一下。unction uint8arrayToBase64(u8Arr) { let CHUNK_SIZE = 0x8000; //arbitrary number let index = 0; let length = u8Arr.length; let result = ...转载 2020-04-02 16:12:43 · 12819 阅读 · 0 评论 -
求线段交点
本文转载自: https://www.cnblogs.com/xpvincent/p/5208994.html下面我就现学现卖的把最近才学会的一些"求线段交点"的算法说一说, 希望对大家有所帮助.本文讲的内容都很初级, 主要是面向和我一样的初学者, 所以请各位算法帝们轻拍啊 嘎嘎引用已知线段1(a,b) 和线段2(c,d) ,其中a b c d为端点, 求线段交点p .(平行或共线视作不相...转载 2019-11-28 16:41:27 · 1368 阅读 · 0 评论 -
斗地主滑动选择卡牌的实现
最近想自己做一个斗地主游戏(使用cocoscreator + javascript),发现滑动选择卡牌还有一点点麻烦呢,这里把实现分享下。1、首先封装卡牌CardCtrl.js 卡牌的touched属性即为触摸框选标记,selected属性为触摸结束所选择卡牌的标记。其他的牌面花色什么的这里不做处理。/** * Created by skyxu on 2018/11/1. *...原创 2019-03-25 14:10:50 · 1282 阅读 · 0 评论 -
经典排序算法之冒泡排序
冒泡排序就是依次比较相邻的元素,比较n趟(n为数组大小),没每趟找到一个最大的放到末尾,类似于水泡,小的元素慢慢向上浮动,大的向下,代码如下:void sortBubble(vector<int> &arr){ for (int i = 0; i<arr.size(); i++) { bool flag = false; for (int j = 0原创 2015-04-09 14:13:07 · 485 阅读 · 0 评论 -
经典排序算法之希尔排序
希尔排序是希尔(Donald Shell)于1959年提出的一种排序算法。希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序,同时该算法是冲破O(n2)的第一批算法之一。希尔排序适合数据量中等情况,几十个到几万个。 网上看了好久才彻底明白希尔排序是什么,简单的说将就是按照步进对数据进行分组,对每组分别进行插入排序,直到步进是1的时候则全部完成。在此...原创 2019-03-13 14:08:02 · 320 阅读 · 0 评论 -
经典排序算法之直接选择排序
直接选择算法和冒泡有异曲同工之妙。同样适合用于数据量非常小的排序。function sortSelect(arr) { for (let i = 0; i < arr.length; i++) { let index = i; for (let j = i+1; j < arr.length; j++) { if (a...原创 2019-03-18 15:13:21 · 322 阅读 · 3 评论 -
经典排序算法之插入排序
直接插入排序算法即每次循环都把后面的数据插入到比它小的数据前面。直接插入排序插入有序序列中需要从后向前挨个扫描数据,并且还要将数据向后移为新数据腾出位置,显然当数据量大的时候效率很低,直接插入排序适用数据量小的情况 function sortInsert(arr) { for (let i = 1; i < arr.length; i++) { let j = i...原创 2019-03-18 15:12:35 · 204 阅读 · 2 评论 -
牛牛牌型判定
牌型大小:五小牛 > 五花牛 > 炸弹 > 银牛 > 牛牛 > 有牛(牛987654321) > 没牛,K > Q > J ……2 > A, 黑桃♠️ > 红桃♥️ > 梅花♣️ > 方块♦️,同样的牌型比大小,同样的手牌比花色. /** * Created by skyxu on 2019/3/20. * */...原创 2019-05-06 10:42:50 · 10867 阅读 · 11 评论 -
经典排序算法之堆排序
经典排序算法之堆排序若以升序排序说明,把数组转换成最大堆积(Max-Heap Heap),这是一种满足最大堆积性质(Max-Heap Property)的二叉树:对于除了根之外的每个节点i, A[parent(i)] ≥ A[i]。重复从最大堆积取出数值最大的结点(把根结点和最后一个结点交换,把交换后的最后一个结点移出堆),并让残余的堆积维持最大堆积性质。最大堆积即:父节点总是大于子节点的...原创 2019-03-11 11:47:24 · 171 阅读 · 0 评论 -
A*寻路在cocoscreator中的使用
1. 简介 a星寻路作为启发式搜索,在游戏开发中经常使用,性能比dps要好,也比较简单好实现,通用原理网上很多这里就不多做详解了,还不熟悉的可以参考:简书链接;2. 实现伪码如下把当前点加入openListwhile(openList不为空){ 取出f值最小的点作为当前点curGrid if(curGrid == endGrid) 查找结束,生成路径 查找cur...原创 2019-03-11 11:45:20 · 1498 阅读 · 2 评论 -
经典排序算法之快速排序
快速排序(Quicksort)是对冒泡排序的一种改进。 快速排序由C. A. R. Hoare在1962年提出。它采用了一种分治的策略,通常称其为分治法(Divide-and-ConquerMethod)。它的基本思想是:通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到原创 2017-07-17 15:06:44 · 343 阅读 · 0 评论