将一个div的宽度和高度设置为0,然后设置边框样式.triangle{ width: 0; height: 0; border-top: 50px solid black; border-right: 50px solid red; border-bottom: 50px solid green; border-left: 50px solid blue; } 将一个div的border都设置成50px粗,并且不同颜色,结果如下图所示:把边框宽度设置成50px,计算机处理时,在边框交接处,一边占用一半的面积。将左右下边框设置成transparent,就可
admin 2020-03-17 CSS 783
1.切记不要用字符串存储日期我记得我在大学的时候就这样干过,而且现在很多对数据库不太了解的新手也会这样干,可见,这种存储日期的方式的优点还是有的,就是简单直白,容易上手。但是,这是不正确的做法,主要会有下面两个问题:i. 字符串占用的空间更大!ii. 字符串存储的日期比较效率比较低(逐个字符进行比对),无法用日期相关的 API 进行计算和比较。2.Datetime 和 Timestamp 之间抉择Datetime 和 Timestamp 是 MySQL 提供的两种比较相似的保存时间的数据类型。他们两者究竟该如何选择呢?通常我们都会首选 Timestamp。 下面说一下为什么这样做!2.1 Da
admin 2020-03-17 MySQL 1155
1,为什么要画流程图很多人拿到需求就火急火燎的开始画原型,然后画着画着觉得有些地方没有考虑到,又回头去改,如果在画原型之前,你能将自己的业务流程想好,用户的操作流程想好,页面跳转想清楚,你就能少做很多无用功,达到事半功倍的效果。2,什么是流程图流程图是表示算法、工作流或流程的一种框图表示,它以不同类型的框代表不同种类的步骤,每两个步骤之间则以箭头连接。这种表示方法便于说明解决已知问题的方法。流程图在分析、设计、记录及操控许多领域的流程或程序都有广泛应用。3,流程图常用元素定义4,一般流程图有三种结构:顺序结构、选择结构、循环结构5,常用的三种流程图产品中设计的流程图主要有三种,业务路程图(泳道
admin 2020-03-13 其他 1877
写好代码,阿里专家沉淀了一套“如何写复杂业务代码”的方法论,在此分享给大家,相信同样的方法论可以复制到大部分复杂业务场景。一文教会你如何写复杂业务代码了解我的人都知道,我一直在致力于应用架构和代码复杂度的治理。这两天在看零售通商品域的代码。面对零售通如此复杂的业务场景,如何在架构和代码层面进行应对,是一个新课题。针对该命题,我进行了比较细致的思考和研究。结合实际的业务场景,我沉淀了一套“如何写复杂业务代码”的方法论,在此分享给大家。我相信,同样的方法论可以复制到大部分复杂业务场景。一个复杂业务的处理过程业务背景简单的介绍下业务背景,零售通是给线下小店供货的B2B模式,我们希望通过数字化重构传统
admin 2020-03-11 其他 881
安装 node-sasssudo npm i -g node-sassnode-sass 安装失败:gyp ERR! stack Error: EACCES: permission denied, mkdir '.../node-sass/build'或gyp ERR! configure error gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/node-sass/.node-gyp'gyp ERR! System Darwin 18.7.0使用 --unsafe-per
admin 2020-02-18 Node.js 1852
本方法不易维护,建议取出数据,在程序中递归,例如 https://javascript.net.cn/article?id=654代码如下:delimiter / DROP FUNCTION IF EXISTS `getChild` / CREATE FUNCTION `getChild`(rootId INT) RETURNS VARCHAR(1000) BEGIN DECLARE ptemp varchar(1000); DECLARE ctemp varchar(1000); SET ptemp = '#'; SET ctemp =ca
admin 2020-02-13 MySQL 798
后端篇地址:https://javascript.net.cn/article?id=649相关文档:https://restfulapi.cn/d/271前端代码主要功能是,连接服务器,发送心跳,断开服务器后自动连接。/** * JSSDK 对象 */ var PigIM = { config: {}, // 配置 fromId: {}, // 发送者 ID ws: {}, // Websocket 对象 connection: {}, listen: {}, heartbeatTimer: {},
admin 2020-02-07 JavaScript 1006
物理像素: 顾名思义,就是设备屏幕上的实际像素。也就是说这个手机被出厂造出来的时候,这个屏幕上有多少个像素点,他的物理像素就是多少; 设备独立像素: 也叫做逻辑像素(对于前端来说,和我们的css像素是一样的),这个不同的设备是不一样的。在viewport为ideal-viewport模式时, 如iphone6此时的viewport为375px,代表着我们在css中写375px就可以达到全屏的效果;在移动端中会使用rem方案,来做不同设备间的适配:(function () { function changeRootFont() { var designWidth = 750, rem2p
admin 2019-11-26 CSS 970
作用:将一个数组转为用逗号分隔的参数序列。//该运算符主要用于函数调用。function push(array, ...items) { array.push(...items);} function add(x, y) { return x + y;} var numbers = [4, 38];add(...numbers) // 42//扩展运算符取代apply方法的一个实际的例子,应用Math.max方法,简化求出一个数组最大元素的写法。// ES5 的写法Math.max.apply(null, [14, 3, 77]) // ES6 的写法Math.max(...[14, 3, 7
admin 2019-11-16 JavaScript 922
body canvas id="canvas" width="120" height="30" style="cursor: pointer" /canvas input type="text" id="code" placeholder="不区分大小写" input type="button" value="验证" onclick="clickEvent()" /body /html script var numArr = [] var canvas = document.querySelector('#canvas');
admin 2019-11-16 JavaScript 890
css :not()排除函数css:not()函数用来排除选择,not(x),其中的x为css选择器,但是x不能是not选择器,也就是说:not()排除选择器不能嵌套使用。css:not()排除选择器使用.sibcont{ background:#f1f1f1; border:1px solid #bababa; margin:20px; padding:20px; } .sibcont ul{ margin:0; padding:0; list-style:none; } .sibcont ul li{ color:#C91010;
admin 2019-11-16 CSS 901
最近探究js原理的过程中遇到了这个挺有趣的问题。先贴代码:var a = {n:1}a.x = a = {n:2}alert(a.x) //undefined在弄懂这个之前,我们先普及一个知识点,就是在javascript运算符中,属性运算符的优先级高于赋值运算符的优先级。因此,a.x是先于赋值之前就进行的。就是说,a.x刚开始是undefined的,这是没错的。接下来我们探究一下连等赋值的赋值顺序:1、从左往右a.x赋值为{n:2};然后a赋值为{n:2};a的重新指向重写了a.x,即.x属性不存在,因此a.x输出为undefined。2、从右往左a赋值为{n:2};直接限制了a.x的赋值,
admin 2019-11-16 JavaScript 819
在文件上传的时候我们我们选择监控change事件来获取文件,如果第一次如果选择了A文件,当再次点开选择A 文件时,change事件没有触发,这时可以用如下方式处理.1. vue项目处理方式:this.$refs.uploadExcelId.value=null;复制该代码到项目中,并且把uploadExcelId换成自己input的ref即可。2. 普通js处理方式:event.target.value=”;尽量不要用删除dom元素,再添加这种操作方式,因为还需要在做事件绑定比较麻烦。
admin 2019-11-16 JavaScript 794
Scss 和 Sass 的区别scss 是 sass的一个升级版本,完全兼容sass之前的功能,又有了些新增能力。语法形式上有些许不同,最主要的就是sass是靠缩进表示嵌套关系,scss是花括号。比如:/*** sass 代码 ***/ .main width:100px; .top width:100px /*** scss 代码 ***/ .main{ width:100px; .top{ width:100px; } } 编码规则SASS首先会检查代码文件的Unicode BOM(byte order mark),然后是@ch
admin 2019-10-05 CSS 1100
for和forEach的差别是后者不能正常的跳出循环(return、break等),其它的差别不大,把forEach转成for的写法就知道为什么你的for写法可以顺序执行而forEach不能:for:const report = async () = { for (let i = 0, len = arr.length; i len; i++) { await asyncFn(arr[i]); } }; forEach:const report = async () = { arr.forEach(async (item) = {
admin 2019-08-25 JavaScript 818
一、简介在HTTP中,基本认证(Basic access authentication)是一种用来允许网页浏览器或其他客户端程序在请求时提供用户名和口令形式的身份凭证的一种登录验证方式。最明显的特征是,Basic Auth 就是在请求的时候在headers中设置 Authorization: "Basic 用户名和密码的base64加密字符串"。JWT Token 认证,建议把 Token 保存在 Authorization Bearer中。二、访问形式1、使用浏览器在使用浏览器访问设置了 HTTP Basic Auth 的服务器时,会弹出对话框,输入用户名和密码即可。2、使用 HTTP Cl
admin 2019-08-18 其他 1609
axios API可以通过向 axios 传递相关配置来创建请求axios(config)// 发送 POST 请求 axios({  method: 'post',  url: '/user/12345',  data: {   firstName: 'Fred',   lastName: 'Flintstone'  } }); // 获取远端图片 axios({  method:'get',  url:'http://bit.ly/2mTM3nY',  responseType:'stream' })  .then(function(response) {
admin 2019-08-15 JavaScript 854
1,令牌桶算法(Token Bucket)令牌桶算法(Token Bucket) 随着时间流逝,系统会按恒定1/QPS时间间隔(如果QPS=100,则间隔是10ms)往桶里加入Token,如果桶已经满了就不再加了。新请求来临时,会各自拿走一个Token,如果没有Token可拿了就阻塞或者拒绝服务。令牌桶的另外一个好处是可以方便的改变速度。 一旦需要提高速率,则按需提高放入桶中的令牌的速率。 一般会定时(比如100毫秒)往桶中增加一定数量的令牌, 有些变种算法则实时的计算应该增加的令牌的数量。2,算法实现对于每个 Bucket 设置一个定时器,而一个定时器就是一条线程。那么在你的服务器上,光是分
admin 2019-08-06 其他 1221
General 通用信息Request URL:详细地址   如域名,参数传值等信息。Request Method: 请求方式 如:get,post,head,put,delete optionsStatus Code : 返回的状态码 如:200,400,403,500等等Remote Address 请求远程ip 地址Referrer Policy:1、no-referrer-when-downgrade(默认值) 在没有指定任何策略的情况下用户代理的默认行为,在同等安全级别的情况下,引用页面的地址会被发送(HTTPS->HTTPS),但是在降级的情况下不会被发送(HTTPS->HTTP)
admin 2019-07-31 其他 996
一,推荐方法下单渠道1位+支付渠道1位+业务类型1位+时间信息4位+下单时间的Unix时间戳后8位(加上随机码随机后的数字)+用户user id后4位。然后你会说,这样算下来就订单号就19位了啊,一点都不精简啊,不好记不好念不好输的。但我说的上面的这些业务标记,你不一定要全部加上啊。你看淘宝/天猫那么大的订单量,16位订单号就搞定了。细心的网友已经发现了,订单号的后4位是取自用户user id的后四位,前12位中有10位可能是由Unix时间戳加随机规则生成的。二,从用户体验和数据库优化的角度来看1.利用数据库主键值产生一个自增长的订单号(订单号即数据表的主键)2.日期+自增长数字的订单号(比如
admin 2019-07-27 其他 2098
随机推荐
WP_REST_Response 返回结果类
Linux netstat 命令
WordPress 函数 add_option()、get_option() 和 update_option()
WordPress 数据库表结构
数据库中间表应该如何命名
如何使用命令修改 MySQL 数据库名称
Light 主题
CSS3 实现 Switch 开关