- 博客(180)
- 资源 (1)
- 收藏
- 关注
原创 巧用二进制实现俄罗斯方块小游戏
首先建立两个数组board、tetris用来存储当前已经堆积在棋盘的方块与正在下落的方块。这两个是一维数组当需要在页面画棋盘时就对其每一项转成二进制(看计算属性tetrisBoard),其中1(红色)0(白色)。判断是否可以下落:对board、tetris每一项 &(与操作),如果都为0则还可以下落,否则停止下落。判断是否触底:tetris的最后一项是否为0如果不为0则说明已经触底了: :对board、tetris每一项 &(与操作),如果都为0则还可以移动,否则停止移动。
2024-03-03 14:31:38 473
原创 对于随机生成图片接口浏览器走缓存的问题
有人可能会使用时间戳作为这个query,但是在v-for这个场景下是不实用的,因为v-for循环出来的是同一个时间戳(我已经试验过了),所以才采用的Math.random()
2024-01-20 22:55:21 689
原创 cytoscapejs获取被点击节点位置,并在该节点附近进行双击展示弹窗
【代码】cytoscapejs获取被点击节点位置,并在该节点附近进行双击展示弹窗。
2023-12-15 11:24:23 465
原创 vue子传父的一种新方法:this.$emit(‘input‘, value)可实现实时向父组件传值
今天要说的就是利用v-model和this.$emit(‘input’,value)实现子传父。众所周知,v-model是给input绑定,方便对表单的双向绑定。其实,v-model是个语法糖,具体案例如下所示。
2023-08-02 21:30:26 2134
原创 设计模式:组合模式
这个应用的地方也比较多,比如大多数系统的UI界面的导航菜单一般都是组合模式,再如Android里面的xml布局都是用的组合模式。在选择是否应用组合模式时,要考虑设计上的抉择,到底是要透明性更多一点,还是安全性更多一点,需要做一个平衡。
2023-01-11 18:35:19 92
原创 设计模式:桥接模式
设想如果要绘制矩形、圆形、椭圆、正方形,我们至少需要4个形状类,但是如果绘制的图形需要具有不同的颜色,如红色、绿色、蓝色等,此时至少有如下两种设计方案:- 第一种设计方案是为每一种形状都提供一套各种颜色的版本。- 第二种设计方案是根据实际需要对形状和颜色进行组合。第二种方案就是桥接模式
2023-01-11 13:15:00 85
原创 设计模式:模块模式
摸块化模式最初被定义为在传统软件工程中为类提供私有和公共封装的一种方法。能够使一个单独的对象拥有公共/私有的方法和变量,从而屏蔽来自全局作用域的特殊部分。这可以减少我们的函数名与在页面中其他脚本区域内定义的函数名冲突的可能性。
2023-01-11 10:54:16 153
原创 设计模式:发布订阅模式
发布订阅模式是的订阅者和发布者可以不互相知道,他们通过第三方互相通知《触发信息》。而且第三方也只负责通知订阅者:发布者要求我通知你了。但是不会具体告诉订阅者需要做什么,订阅者自己掌控自己做什么,实现了完全的解耦。
2023-01-10 22:16:48 97
原创 设计模式:策略模式
该模式主要解决在有多种算法相似的情况下,使用if...else所带来的难以维护性。它的优点是算法可以自由切换,同时可以避免过多的if...else判断,具有良好的扩展性。
2023-01-10 14:33:12 51
原创 目标检测算法
就是提取图像纹理(细节)就相当于你就让孩子做一道题,做了一万遍(同一样本训练次数过多),到后来孩子把答案背下来了。再换个数给他做,他还是会做错!所以深度学习最主要就是大样本。就可以类比为题海战术,这样就可以尽量避免过拟合。就是题做少了,基础不好,网络准确率也不会很高。...
2022-08-29 21:59:22 615
原创 ip地址和mac地址的区别以及tpc/ip四层网络协议
IP地址划分时基于地理区域,换了不同地方,即便是同一台硬件设备,IP地址一定不一样,可以理解为和地理位置有关;而MAC地址不依赖于地理区域,换了不同地方,只要还是同一台硬件设备,MAC地址就不会变,它只和硬件设备有关。其实ip地址就是为了知道你这个设备所处的局域网(教室),而mac地址是为了找到你这个人在教室中的位置。......
2022-07-15 11:55:48 1158
原创 git如何会滚本地分支代码以及远端分支代码
git reflog查看你想要回滚到的版本号git reset --hard 版本号本地会滚到指定版本号的代码git push origin 分支名 -f这里-f 是强制的意思,因为你的版本号低于远端仓库,所以是不让你push的,故只能强制push...
2022-07-13 18:17:18 165
原创 对typescript中的any never void数据类型的再理解
一般你不知道第三方库返回来的是啥,或者获取的DOM元素,你就可以用any类型来接收当你函数没有返回值时候就用void
2022-07-07 14:34:06 275
原创 vus.SSR在asynData函数中请求数据的注意事项
在服务器渲染时如果需要请求数据时不能在mouted生命周期中请求,这是因为mouted是等组件实例全部挂在到页面上时才会发请求,这样请求其实是在客户端完成的不利于SEO。而我们在做SSR时的初衷其实除了为加快首屏加载,还有一个就是为了SEO(被爬虫爬),所以我们要在asynData声明周期中执行解释:为什么由其他页面进入时请求是在客户端完成的?...
2022-07-03 13:15:11 202
原创 JS模块化
模块化规范CommonJS(Node中用的)AMDES6CMD(不太重要)commonJS用法:暴露模块:module.exports = value或exports.xxx = value引入模块:require(xxx),如果是第三方模块,xxx为模块名;如果是自定义模块,xxx为模块文件路径ES6常规暴露主要是通过export对属性挨个进行暴露在用import引入时需要采用es6的解构赋值,例如 import {a,b} form ‘./a.js’默认暴露采用expo
2022-05-29 13:00:46 394 1
原创 https工作流程
1. 建立TCP链接2. 完成SSL握手因为生成的对称秘钥是服务器和客户端根据随机数1,2,3自己生成的所以比较安全,外界获取不到3. 客户端和服务端开始交换数据(数据是已经加密的)
2022-05-06 11:21:49 665
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人