自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 问答 (1)
  • 收藏
  • 关注

原创 JavaScript二十四节气算法的实现(附源码)

24节气是中国人通过观察太阳周年运动,认知一年中时令、气候、物候等方面变化规律形成的知识体系和社会实践,是上古农耕文明的产物,千年以来指导着中国传统农业生产和日常生活,可以很好的反映气象变化和季节的更替,其实24节气算是一种阳历,是有规律可循的,计算它有相关的公示,下面还是直接上代码,很简单,都有注释,下面的代码可以计算任何21世纪年份的节气。

2023-02-08 22:52:12 1499 1

原创 JavaScript公历转农历算法的实现(附源码)

农历不是数学历法,是一种天文学历法,所以,想要计算农历,必须要有天文学观测的数据为支撑,再选取一个基准日期作为计算的起始点。本篇文章所讲的农历算法,数据源自香港天文台提供的农历数据(包含1901-2100年200年的数据),是一些16进制数据块,下面先从他的数据结构讲起。

2023-02-08 22:31:03 944 1

原创 javascript画全年日历

drawDateByYear()方法画出全年的日历,也可以用drawDateByMonth()方法画出某个月的单月日历,默认将日历dom插入到body里,也可以通过传入parent修改日历容器,例如某个div,d.drawDateByYear(2023,5,function(v){高亮显示的是今天的日期和标记要高亮显示的日期,也添加了点击事件的钩子,自己可以实现钩子函数,从而操作点击的日期值。}为点击回调的钩子函数,这个是点击相应日期后alert()以下被点击的日期,这个自己根据业务需要实现。

2023-01-16 16:39:07 1299

原创 c++、php、java、python、javascript对比,同一功能用5种编程语言写一遍,谁才是最好的编程语言?

c++、php、java、python、javascript,感觉编程语言里面,大家使用最多的就是这几种了吧,最火的是JavaScript,python好像说是无所不能,php没悬念还是世界上最好的编程语言,java用的人应该最多吧,c++吗,据说比较难,所以就是逼格最高的语言吧。那到底谁最厉害呢,下面我们就用五种语言写同一个功能看看。

2022-11-11 09:59:43 3883 1

原创 php实现爬虫抓取法定节假日放假和补班安排数据

说到爬虫,大家首先想到的是python,其实什么语言都一样,无非是抓取网页数据,然后正则分析网页结构,把想要的信息取出来,更深层次的无非是递归爬取所有链接,数据库操作等,php做爬虫也不算稀奇,今天这个需求很简单,就是抓取一篇放假通知的文章,从里面整理出法定节假日期间哪几天放假,哪几天补班,整理成规则的数组或者json,主要用到curl和正则。string(12) "正常上班"string(12) "正常上班"string(12) "正常上班"string(12) "正常上班"

2022-10-31 19:54:43 1370

原创 c语言实现BOOL类型

C语言功能强大,语法简洁,但简洁到没有BOOL类型,不能像C++那样使用true和false,这大大降低了代码的可读性,不过C语言的可塑性高,我们可以自定义一个BOOL类型,很简单,定义之后就和其他语言的bool类型一样了,直接使用true或者false就行。然后我们定义了一个返回值为BOOL类型的函数,输入两个数,如果第一个数大于第二个数则返回true,反之则返回false。然后在main函数调用a函数的返回值,可以看到这样就可以在C语言正常使用BOOL类型了。我们看定义BOOL类型就只有3行,

2022-10-02 16:16:01 4531 2

原创 javascript实现仿苹果电脑窗口最小化效果、css实现不规则图形的div

今天值班,继续分享个没用的技术,最近一个微信闲聊群的网友问能不能用div实现类似于苹果电脑窗口最小化的动画效果(窗口边框变得向内弯曲同时快速缩小直至消失),大概想了下,如果要完全还原,要用canvas模拟,因为要把div内容画到画布上,然后再扭曲图像,但还有一种简单方法,用js控制css实现不规则图形的div,把div的左边框用贝塞尔曲线画出来,这样差不多就实现了类似于窗口向内弯曲的效果,下面先上效果图。

2022-10-02 11:17:48 1778

原创 JavaScript重写alert,confirm,prompt方法(JavaScript实现线程非阻塞式暂停和启动)

利用es6新属性await实现代码的暂停和继续运行,进而重写confirm界面,实现和原生confirm同样的功能

2022-09-05 00:21:17 2301 1

原创 javascript用canvas实现贪吃蛇

这次再来个正常点儿的,JavaScript贪吃蛇,算法从上一版php贪吃蛇移植过来的,把部分php函数改成了JavaScript的方法,php版本是用table标签画蛇,JavaScript是用canvas画蛇,实现方法不一样,但算法都是一样的,下面还是先上效果图,再上代码。要是在电脑端玩最好加上键盘监听,通过键盘控制蛇体方向,这里不再赘述,很简单。$this.cpu()方法负责计算蛇体位置数组和食物以及方向控制和得分情况。界面没仔细雕琢,很简陋,下面还是先上代码。大体流程就是这样,代码注释比较详细了。..

2022-08-18 14:19:04 253

原创 造轮子之jQuery原理,30行代码实现jQuery

几乎没人用jQuery了,不过有些需要动态修改dom的应用,用jQuery还是灵活一些,尤其是自己想写个小项目,jQuery太大了,有些功能自己用不到,所以今天趁闲暇时间写了个仿的jQuery,没心思看jQuery源码,所以只是功能上的模仿,没用jquery那种对象的写法(return this实现链式操作),直接用递归实现的链式操作,不多说,下面还是先上代码。目前只实现了eq(),find(),和text()方法,其他方法可以参照这个实现,很简单,下面给个demo测试一下,代码如下。...

2022-08-17 17:34:24 214

原创 JavaScript实现图片瀑布流

上一篇文章讲了php在服务端实现图片瀑布流渲染纯php实现图片瀑布流渲染_sdxjwkq01的博客-CSDN博客,这篇再讲个正常点的前端实现的瀑布流吧。其实也很简单,首先创建几个宽度相同的并排的竖向div,然后找出高度最小的div,往里面插入图片,重新计算高度最小的div,往里面插入图片,如此往复,直到所有图片都插入到页面中。下面还是先上代码,注释很详细了。运行一下,效果如下图: 确实很简单吧,这次就先分享到这里...

2022-07-10 21:40:43 378

原创 纯php实现图片瀑布流渲染

说到图片瀑布流,大家首先想到的是JavaScript实现。最近有朋友问我如何用php渲染图片瀑布流,忙里抽闲,写了个小demo,一会把代码粘到下面和大家分享。 其实无论是JavaScript还是php还是其他语言,实现瀑布流的逻辑是差不多的,都是把图片分成几列,宽度相同,高度不同,按照宽度计算出相对高度,循环找高度最小的列往里面插入新图片,如此往复,直到把所有的图片都插入到相应的列里,JavaScript和php的不同无非就是JavaScript生成瀑布流动态插入图片然后计算高度,php可以先

2022-07-10 20:34:33 554

原创 php网页生成pdf文件

借助TCPDF库,php生成pdf变得很容易,下面上一个demo,先上代码,很简单,都有注释。然后运行一下,可以看到已经生成相应的pdf经过测试,基本的css样式都可以得到较好的支持。

2022-07-06 11:53:44 1721

原创 自定义TinkPhp模板标签

常用thinkphp的朋友应该对他的模板标签很熟悉,如标签循环输出数据,先在控制器类抛出数据,再在模板文件中用volist循环渲染,那么我们如果不想在控制器写逻辑查询数据库,想直接在模板标签里查询呢,例如定义成这种,table代表要查询的表,下面我用一个小例子来给大家讲解一下。 首先我的数据库有个article1表如下 如果用ThinkPhp自带的volist标签,大概如下 ...

2022-07-06 10:58:55 381

原创 php批量excel转word

假如有如下excel表格需求是把每一行的个人信息填写到word文件里,并且每个人生成一个word文档,就像下面这样使用php,这个需求很好实现,大约20几行代码,之前我写过一篇博客关于php解析word文档的,是用的正则表达式解析的,这次直接用个成品,phpoffice,只需要简单的引入就可以使用了,这次主要用了两个包,phpword和phpexcel,下面还是上代码,很简单都有注释,在thinkphp框架里写的,不用框架的话直接include就行。 首先还得准备相应的excel表格和word模板,w

2022-06-30 09:07:29 306

原创 造轮子之Vue实现原理,几十行代码实现Vue

Vue.js框架的原理其实很简单,就是利用了Object.defineProperty()方法进行了数据劫持,重写里面的get和set方法,数据发生变动,相应的set()方法变回响应,进而拿到更新的数据来更新dom,今天抽时间写了一个仿Vue.js的demo,暂且叫Mvc.js吧,初步实现了Vue的模板渲染功能,和大家分享,下面还是先上代码。<html> <head> <meta charset="utf-8"> <title>...

2022-05-16 13:34:19 430

原创 原生JavaScript实现ajax、get、post请求

前端项目经常会用ajax,jQuery、fetch、axios等都对ajax进行了封装,很好用,不过有时候我们只想做个很简单的页面,只想用原生JavaScript写,不想引入任何框架,这个时候就需要直接用JavaScript的XMLHttpRequest对象直接发起网络请求了,其实很简单,不到50行代码吧,下面还是先上代码。/** * ajax请求 * by sdxjwkq01 */class ajax{ /** * [get get请求] * @param {[s...

2022-04-25 11:19:05 603

原创 纯php实现贪吃蛇游戏(不使用JavaScript)

好久不写php了,最近有朋友说php只能写写增删改查,无法实现贪吃蛇游戏,忙里偷闲,写了个纯php版的贪吃蛇,不包含一句JavaScript代码,其实php也有写桌面应用的接口,不过今天我们这个demo就是我们常见的写增删改查的服务端php,下面还是先上效果图,再上代码。然后是代码<?phpnamespace snake;class snake{ public function __construct(){ $this->app="http://".$_...

2022-04-13 14:17:02 4792

原创 安卓WebView文件上传的实现(解决安卓WebView中<input type=‘file‘/>标签点击没反应)

网页端上传文件常用<input type='file'/>标签,放上这个标签,浏览器就会出现这个文件选择器,点击就可以弹出文件选择窗口,很是简单方便,不过,包含<input type='file'/>标签的网页要是在安卓WebView中渲染,<input type='file'/>这个标签就会失效,用户点击后毫无反应,根本原因就是安卓WebView没有实现具体的文件选择器方法,对应的方法是空的,我们要安卓WebView支持<input type='file'/&gt

2022-04-03 15:55:10 8506

原创 OCR图片转文字的实现

做文职的朋友可能经常在网上复制粘贴一些文章素材,可是好多都要会员付费才能复制,要是简单的屏蔽了复制还好说,直接控制台输入document.body.oncopy=function(){event.returnValue=true;}一般就能解决,不过,有一些文字内容是以图片的方式显示出来的,网上有一些图片转文字的应用,不过好多是付费的,今天趁着值班的时间研究了下,找到一款比较好用的OCR库,Tesseract-OCR,是谷歌的开源项目,测试了下准确率能达到80%,在不花钱的里面还是蛮好用的。于是借助

2022-03-09 23:14:13 542 2

原创 javascript gba游戏模拟器

周末了,今天分享个好玩的,JavaScript版本的gba游戏模拟器,这个是从github上找到的,GBA.js (endrift.github.io),发现可以玩大部分gba游戏,塞尔达,口袋妖怪啥的都可以,看了下代码,是用JavaScript模拟的thumb指令集,thumb指令集是gba游戏掌机cpu使用的,也是ARM架构,cpu的时钟通过定时器模拟的,总之原作者技术很硬。我简单修改了下,把键盘操作改成了button触摸,原来的存档功能无法使用,我也简单修改了一下,使其最终在手机上能正...

2021-12-12 20:41:48 5205 3

原创 javascript解析印象笔记导出enex文件(javascript解析xml,javascript监听手机端手指滑动事件)

今晚又是在单位值班,最近看小说在印象笔记记了几百条零散的笔记,在印象笔记app上看得一条一条点开,今天把笔记导出来尝试着用js解析它,把一条条笔记转化为一张张小卡片,像刷抖音那样滑动着看,于是就用js写了一个demo,这次是在手机端,大体效果如下:...

2021-11-13 20:48:20 1311

原创 微信小程序开发快速入门

最近整理文件,找到一个18年写的微信小程序开发快速入门,对于新手还是值得一看的,三年多过去了,可能一些接口已经更新了,不过,整体思想还是没变的。 如果你熟悉JavaScript,那你基本上看完这个文档马上就可以编写微信小程序,小程序分为逻辑层和视图层,逻辑层由javascript脚本控制,视图层由小程序标签控制。虽然小程序最终被编译为了html+js的代码,但是,小程序不允许直接使用任何html标签,禁止了一切dom操作,像eval,alert,confirm等语句也被禁止...

2021-10-24 11:45:49 1600

原创 安卓JAVA与javascript交互的实现

最近在研究c++与JavaScript的交互,有朋友问我安卓怎样与JavaScript交互,今天找到一个之前写的小demo,实现的是安卓webview里面的JavaScript和原生安卓进行交互。实现了安卓与JavaScript交互,就可以用html+js+css在webview实现主要界面,Java只负责一些js不好实现的功能比如文件操作,数据库操作,摄像头操作等硬件操作。首先要在工程的AndroidManifest.xml文件申请所需权限,比如摄像头,gps定位,访问存储卡等,代码大...

2021-10-23 10:59:03 1371

原创 c++读取MP3文件专辑图片、歌手名等ID3v2信息

之前用javascript做了一个本地音乐播放器(javascript不依赖库开发windows应用程序_sdxjwkq01的博客-CSDN博客_js开发windows应用程序),最近想加个显示MP3内嵌图片和专辑信息的功能,一开始找了一个JavaScript的库,id3.js,可惜不支持IE9,只能选择用c++读取,先用c++实现一个http服务器,服务器负责解析MP3文件并返回歌ID3V2信息,JavaScript先用wscript.shell启动服务器,再通过get方法请求返回相应页面...

2021-10-20 08:29:00 2084

原创 c++实现最简单的http服务器(windows环境下)

最近工作忙,没时间研究代码,正好今天在单位值班,研究了下http服务器的实现,之前做后台经常用apache和IIS服务器,这次查了下资料写个简单的http服务器,个人比较喜欢用javascript编写hta应用程序,可是js功能太弱了,实现了http服务器,就可以用特殊端口让javascript和c++交互,js不能做的事情交给c++处理,不多说,先上代码。#include <stdio.h>#include <stdlib.h>#include <windows.h

2021-10-16 00:25:45 3416

原创 c++解析二进制文件

转行到和写代码不相关的职业快三年了,以前一直干增删改查那种后端,操作比较多的就是文本文件,xml这种,对二进制文件的结构不是很熟悉,这几天业余时间研究了下,写了个生成和解析二进制文件的小demo,暂时实现了存储string、int和jpg图片到一个二进制文件并将其解析出来。 首先是设计一个文件结构,大体如下:headLength(文件头长度,int类型,占用内存用sizeof int 计算)dataRows(head(文件头,是个结构体数组,描述每个分区存储的数...

2021-06-22 21:17:03 1385 1

原创 坚果云网盘php接口

一个简单的坚果云网盘接口,以前工作的时候写的,现在转行了,分享给大家。上代码,都有注释。<?phpnamespace Cn\Lib;/** * Class JianguoyunLib * @package Cn\Lib * 坚果云网盘接口 * by sdxjwkq */class JianguoyunLib { /** * JianguoyunLib con...

2020-04-03 20:55:59 1522

原创 javascript读写本地sqlite数据库

sqlite这种单文件数据库,类型简单功能强大效率也不错,非常适合单机软件开发。把一个我以前写的JavaScript sqlite数据库操作类分享给大家,还是先上代码,注释写的很清楚啦,支持增删改查,支持链式查询,使用的时候不用new。/*sqlite数据库操作类 by Bob*/this.Db={ tableName:"",//表 whereReg:"",//where条件 o...

2020-03-29 20:24:14 8867

原创 javascript小说阅读器分页算法的实现

好久好久不写代码了,也好久没更新博客了,这次就和大家分享一个电子书阅读器分页的算法吧。 像一些主流的阅读器,如QQ阅读、iReader等,都实现了txt文档分页显示的功能,打开一个txt文档可以快速把文档分割成若干页,每页文字正好铺满屏幕,点击翻屏显示下一页,这样不用操作滚动条,阅读体验更好。那么如何实现txt文件的快速分页呢?如果计算屏幕大小和字体大小算出一屏可...

2020-03-25 21:31:00 4886 1

原创 javascript不依赖库开发windows应用程序

其实javascript不仅可以做网页应用,也可以不依赖任何环境开发windows应用程序。windows系统自带mshta.exe,相当于一个javascript虚拟机,我们把.html文件扩展名改成.hta文件,网页就变成了hta应用程序,双击就可以执行。当然hta可以操作本地文件数据库等,功能比html强大许多,可以开发C/S应用程序。本人之前是个后台程序员,后来考上公务员之...

2019-08-24 21:54:05 3325

原创 php解析word文档

一个简单的word文档阅读类,使用正则实现简单的docx文档阅读,下面是代码<?phpclass Lib { /** * @param $file docx文件路径 * @return string 生成的html字符串 * ---读取docx文档转换为html,仅保留段落,表格,文本框,不保留样式 * by sdxjwkq */ public functio...

2018-09-17 17:08:29 2537 1

原创 腾讯人脸融合接口的使用

最近一个程序用到了腾旭的人脸融合接口,类似于天天p图的功能接口参考文档https://ai.qq.com/doc/facemerge.shtml下面是一个demo&lt;?phperror_reporting(0);/** * Class Common * by sdxjwkq */class Common{ protected function getReqSign($pa...

2018-05-02 13:41:00 4150 1

原创 阿里云OSS对象存储的实现

使用了OSS,就可以实现数据和业务逻辑分离了,近期我用了一下阿里云的对象存储,感觉效果还不错,所以把常用的功能封装成了接口,方便调用,下面是代码,和大家分享。<?phpnamespace AliyunOss;/** * Interface api * @package AliyunOss * 阿里云对象存储接口的实现 * by sdxjwkq */interface apiIn

2018-01-17 18:34:41 2263

原创 php不用eval实现字符串转数组

在一些项目中,我们经常需要将下面这种字符串转化为数组array(array('name'=>'Home','single'=>'0','modelid'=>'11'))这时候,可以直接用eval来解决,可是一旦这段字符串出现错误,eval会导致程序停止运行。针对这个问题,我最近写了一个方法,初步实现了String转Array的功能,代码如下{CSDN:CODE:2

2017-07-01 16:07:30 2597

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除