自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 资源 (2)
  • 收藏
  • 关注

原创 简单实现call,apply,bind的代码

首先,先来总结一下这三者的共同点与区别: - 三者都是为了改变`this`的指向 - `call`与`apply`其实差不多,都是一次性传入所有参数,调用后马上执行对应的函数,只是前者接收的是参数列表,但后者接收的是一个数组,代码实现中,除了接收参数不同,其他完全一致 - `bind`返回一个改变了`this`指向的函数,在调用过程中,可以先传入部分固定参数,动态参数可以在调用返回的函数再传入,即可以分开多次传入参数,且返回的函数不会立即执行,开发人员可以根据需求来进行调用返回的函数

2022-11-08 22:34:03 190

原创 扁平化数组的方式 JS

扁平化数组的方式 JS

2022-10-25 21:54:44 205

原创 超过安全范围的整数相加 JS

超过安全范围的整数相加 JS

2022-10-22 01:14:18 197

原创 JS 自定义事件的方法

JS 自定事件

2022-10-22 00:31:20 1283

原创 可迭代对象 一道使let [a,b] = {c:12, d: 34}成立的题目

可迭代对象 一道使let [a,b] = {c:12, d: 34}成立的题目

2022-10-14 22:25:37 258

原创 跑马灯边框、动态边框的实现

动态边框的实现

2022-10-14 00:41:59 295

原创 JS判断对象是否含有某个属性

JS判断对象是否含有某个属性

2022-06-21 23:53:50 1861

原创 JS深度克隆的原理

  在开发过程中如果需要深度克隆,可能很多开发人员都会选择已有的库,采取调用API的形式,可以更加快速的实现效果。比如lodash库。但还是要自己代码实现下这个深度克隆,以便掌握其原理。此外,其原理也是比较简单的,代码原理如下:...

2022-06-19 11:49:16 101

原创 JS的==运算原理

JS的==运算原理

2022-06-18 15:16:11 172

原创 JS加法运算原理

JS 加法原理

2022-06-11 14:24:27 130

原创 js动态创建input元素并自动获取焦点

input元素不会自动获取焦点代码如下: <div> <h2>js创建input元素并自动聚焦</h2> </div> <script>let myButton = document.createElement('button');myButton.innerText = ' 点击我';document.body.append(myButton);myButton.onmousedown = () => { let

2022-02-13 22:06:12 16121

原创 解决iconfont在本地运行显示,但打包上传至服务器不显示的问题

阿里巴巴图标库: https://www.iconfont.cn/创建一个默认项目,然后生成css代码,过程截图如下:由于生成css代码缺少样式等信息,如eot,就会导致上传至服务器不显示。图中url('data:application/x-font-woff2;charset=utf-的信息表示本地缓存,显示会首先使用缓存中的图标信息进行展示,建议要加上。如果网络不好,且没有数据缓存时,这时会从alicdn获取信息,但由于网络差的原因可能获取不到,导致图标不显示。解决办法修改项目设置,如图:

2022-01-20 12:26:28 3381 3

原创 VSCode恢复原来的powershell界面

由于升级版本之后,VSCode的powershell界面已经变样了,看着好像没有以前那种感觉,恢复步骤如下: 打开VSCode的设置界面,然后输入tabs进行搜索,找到截图的位置,去掉勾号即可恢复

2021-11-12 23:39:27 1420

原创 不定义新的的变量进行两数交换

题目 : a = 50, b = 100, 在不定义新的变量情况下进行两数交换。   相信这道题目很多人都遇到过,如果是定义一个新的变量进行临时存储,大家很快都能做出来。现在我使用几种方法进行两数交换,然后分析得出最优的方法。代码如下:// 第一种方法, 使用异或运算public class ExchageNum { public static void main(String[] args) { int a = 50; int b = 100; .

2021-06-06 22:08:24 351 2

原创 算法经典问题----爬楼梯

1、问题阐述假设你现在正在爬楼梯,楼梯有 n级。每次你只能爬 1 级或者 2 级,那么你有多少种方法爬到楼梯的顶部?2、解决思路该问题的解决方法有两种,一个是利用斐波那契数列,即递归方法,另一种是利用动态规划方法。如果n值很大,递归方法耗时长。当值很大时,前者耗时是后者的成百上千倍,甚至前者会出现运行时间过长的异常现象。这是因为每一次递归,都要重新计算,导致耗时过长。3、代码如下package com.learn;import javax.sound.midi.Soundbank;

2021-01-03 23:01:50 864 1

原创 单例模式(饿汉式与懒汉式)

单例模式(饿汉式),代码如下:package com.learn;/** * 单例模式 */public class Person { /** * 饿汉式 */ // 1、私有化构造方法 private Person(){ } // 2、私有化静态属性 private static Person person = new Person(); // 3、获取实例的方法 public static Pe...

2021-01-03 22:39:39 96

原创 SourceTree的软合并、混合合并、强合并区别

SourceTree介绍  这是一款将git版本管理工具操作可视化的操作软件,适用于Windows、IOS系统,也就是说不必使用git命令就可以进行暂存、提交、推送、拉取、合并、回滚等操作,这无疑是减轻了开发人员的负担,从而提高开发效率。软合并  软合并是指将此次提交回滚到指定提交位置,但这个过程中会将修改过的文件暂存到暂存区。操作过程如下:  首先鼠标右键选中要回滚到的位置,然后选中上图红色箭头所指位置。  然后选取“软合并”,点击“确定”。  最后点击左上角的“提交”按钮就可以看到已暂存文件

2020-12-01 12:33:15 6180

原创 不稳定的选择排序

步骤  求出数组的长度len,然后进行len-1趟比较,每一趟记录最小(最大)的元素,通过元素交换放在对应的位置,如: 第一趟遍历len-1个元素,将最小(最大)的元素放在下标为0,即a[0]的位置; 第二趟遍历len-2个元素,将最小(最大)的元素放在下标为1,即a[1]的位置; ··· 第len-1趟遍历1个元素,将最小(最大)的元素放在下标为len-2,即a[len-1]的位置;不稳定性稳定性:指进行排序后,两个相等元素的相对位置没有发生改变。如数组[10,32,10,5,23],进行

2020-06-18 16:24:32 241

原创 归并排序(基础版),包括升序与降序

归并排序  归并排序是一种稳定的排序算法,先进行分组,再进行排序。这个过程中需要采用递归的方法。还需要定义一个辅助数组,用于合并分开的两个子序列。优点1、在众多排序算法中,效率可以达到最快,时间复杂度为O(nlogn)2、由于是稳定排序,故相同的元素会保持排序前的位置,如3,4,4,5,进行排序后,第一个4始终在第二个4前面,适用于某些特定场景。缺点  归并算法需要O(n)的辅助空间,而快速排序只需要O(logn)的辅助空间,故该算法的空间复杂度略高。时间复杂度始终为O(logn)空间复杂

2020-06-02 14:21:21 1344

原创 Hill密码的加密与解密

Hill密码原理 首先随机生成或选取一个密钥矩阵(该矩阵必须是可逆的),过程如下图所示在加密过程中,先将明文分为三个字母一组,不足的用“X”代替,然后将其转化成数字,如0==‘A’,再与矩阵相乘,得到的数字转成字母,如‘’B‘’==1,进行输出。在解密过程中,先求出密钥的逆矩阵,本文直接给出逆矩阵,需要注意的是逆矩阵的元素不可以为负数,若存在负数,则将所有元素+26的若干倍,再mod26,得到全为正整数的逆矩阵。将得到的密文字母转成数字(三个一组),与逆矩阵相乘,将所得的数字转成字母,最后

2020-05-21 14:14:05 10693 1

原创 不一样的快速排序,可同时进行升序与降序

package com.tedu.sort;import java.util.Arrays;public class QuickSort6 { public static void quickSort(boolean flag, int []arr, int low, int high) { if(low>=high) { return; } //1.定义基准数 int t = arr[low]; int l = low; //记录最左边下标号 int h =

2020-05-13 12:50:43 509

动态边框的实现以及动画效果的暂停与播放

动态边框的实现以及动画效果的暂停与播放

2022-10-14

Chrome-Charset-0.5.2_crx3-Chrome70以上版本适用.crx

可以用于浏览器翻译UTF-8编码等

2021-05-31

登录界面、找回密码界面、修改密码界面的源代码

登录界面、找回密码界面、修改密码界面的源代码。 在制作过程中,有使用CSS、JS、Jquery。其中还有cookie、base64的js插件。 每一次刷新登录页面都可以自动刷新验证码。 提供的源代码仅供参考,如有不足,请多多指教,谢谢!

2020-09-05

空空如也

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

TA关注的人

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