第三方登录
大家经常被注册登录繁琐的步骤击退,经常进几个不同的网站要输入几次用户密码,特别繁琐 所以社交账号登录出现了,也就是说用QQ微信微博等社交账号就可以登录其他网站 OAuth 2.0是用于授权的行业标准协议。OAuth 2.0致力于简化客户端开发人员,同时为Web应用程序,桌面应用程序,移动电话和客厅设备提供特定的授权流程。该规范及其扩展正在IETF OAuth工作组内开发。 Oauth 2.0文档 流程图如下: 1234567891011121314151617+--------+ +---------------+| |--(A)- Authorization Request ->| Resource || | | Owner || |<-(B)-- Authorization Grant ---| || | ...
js网页离开时标签栏闪烁效果
之前有朋友问我博客里浏览器标签栏闪烁效果怎么做的 今天把代码贴出来吧 123456789101112131415161718192021222324252627282930313233343536373839// 使用message对象封装消息 var message = { time: 0, title: document.title, timer: null, // 显示新消息提示 show: function () { var title = message.title.replace("【 】", "").replace("【新消息】", ""); // 定时器,设置消息切换频率闪烁效果就此产生 message.timer = setTimeout(funct...
安全密码正则
当你回首往事时,不因碌碌无为而悔恨,不为虚度年华而羞耻,那你就可以很骄傲地和自己讲,你不负此生! 今天分享一个密码的正则,密码必须包含大、小写字母、数字、特殊符号至少三种,且长度为8-20 1^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\W_!@#$%^&*`~()-+=]+$)(?![0-9\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\W_!@#$%^&*`~()-+=]{8,20}$ javascript代码 123if (!(/^(?![a-zA-Z]+$)(?![A-Z0-9]+$)(?![A-Z\W_!@#$%^&*`~()-+=]+$)(?![a-z0-9]+$)(?![a-z\W_!@#$%^&*`~()-+=]+$)(?![0-9\W_!@#$%^&*`~()-+=]+$)[a-zA-Z0-9\W_!@#$%^&*`~()-+=]{8...
PS制作GIF
昨天写了篇博客,是关于CSS实现图片旋转的,群里的小伙伴跟我说博客里看不到效果让我做个GIF。。。那我今天就来写篇如何用PhotoShop制作GIF 我们先把图片拖入ps 然后解锁背景图层 然后选中图层 Ctrl+J复制图层 然后给每个图层调整角度旋转。。。 选中图层然后按Ctrl+T 然后拖动 重复步骤 然后点窗口->时间轴 然后点击从图层建立帧 调整时间 文件->存储为web所用格式 选择gif 点击存储 然后就做好了
简单CSS实现图片旋转
图片旋转~ 代码 12345678910111213141516171819202122232425262728293031323334353637383940414243<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <style> img { width: 200px; height: auto; margin: 20% auto; animation: myrotate 3s linear infinite...
兼容IE浏览器
今天客户说他那边网站崩了,让客户截了个图,看到是ie浏览器。。。我瞬间的反应是崩溃的 所以才有了这篇博客 这里分享一个小工具,能把ES6语法转成IE支持的语法 使用方式很简单 解压,用vscode打开 控制台输入cnpm i 然后把你的js文件放到src\js下面 转换前是这样的 我们npm run build一遍 可以看到我们的dist目录下面已经生成了转换好的js了 2020年,竟然还有人用IE。。。 下载链接
js函数去重
记一个去重函数 1234var array = ["ruben", "ruben", "快乐", "阿超", "快乐"]console.log(array)array = Array.from(new Set(array))console.log(array) 输出结果
字符串的split和join
split() 将字符串拆分成数组 join() 将数组合并 参数为分隔符 两套代码 123456#JavaScriptvar str = "ruben";var array = str.split('');array.forEach(s => console.log(s));str = array.join('');console.log(str); 以及 12345678//javaString str = "ruben";String[] array = str.split("");for (String s : array) { System.out.println(s);}str = String.join("", array);System.out.println(str);
Bigdecimal
转载,原文 一、简介 Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。 二、构造器描述BigDecimal(int) 创建一个具有参数所指定整数值的对象。BigDecimal(double) 创建一个具有参数所指定双精度值的对象。BigDecimal(long) 创建一个具有参数所指定长整数值的对象。BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。 三、方法描述add(BigDecimal) BigDec...
mysql一次给数据库所有表加字段
执行脚本 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950DROP PROCEDUREIF EXISTS addColumn;DELIMITER $$CREATE PROCEDURE addColumn () BEGIN-- 定义表名变量 DECLARE s_tablename VARCHAR ( 100 );/*显示表的数据库中的所有表SELECT table_name FROM information_schema.tables WHERE table_schema='databasename' Order by table_name ;*/#显示所有 DECLARE cur_table_structure CURSOR FOR SELECT table_name FROM INFORMATION_SCHEMA.TABLES -- databasename = 数据库名称 WHERE table...
