Fork me on GitHub

随笔分类 -  js&nodejs

摘要:实现效果图: 上图合成了2个人视频,中途有1个人先离开之后又重新加入了房间。 一、业务场景 业务场景是这样的:多个用户(2 4人)直播的视频,合成为一个视频,这期间要满足2个条件:首先,录制途中可能有一个或多个用户不定次数的离线、重进(网络差和人为操作)的情况;第二,要保证合成的视频和录制的效果是一 阅读全文
posted @ 2019-01-16 19:13 磊哥|www.javacn.site 阅读(1340) 评论(4) 推荐(3) 编辑
摘要:一、前言 Hexo 是一个基于 NodeJs 博客框架,可以快速的帮我们搭建一个博客系统,Hexo使用的是Markdown(下文简称MD)解析文章的,在几秒内即可利用靓丽的主体生成静态网页。 <! more 推荐使用 Hexo 有三大理由: 有大量的主题可供人们选择 使用MD解析文章,MD是现在主流 阅读全文
posted @ 2018-09-07 17:19 磊哥|www.javacn.site 阅读(1219) 评论(0) 推荐(0) 编辑
摘要:七牛云图片存储优点 1. 支持各种尺寸的图片缩放; 2. 支持图片自动压缩; 3. 支持水印添加:图片水印、文字水印两种模式; 2. 图片防盗链,限制访问来源; 2. 设置ip黑白名单,防止恶意盗刷、攻击; 3. 自定义图片域名,看起来更具有归属性; 5. 统计图片的各种访问数据; 6. 支持上传日 阅读全文
posted @ 2018-06-19 22:32 磊哥|www.javacn.site 阅读(2416) 评论(2) 推荐(4) 编辑
摘要:为什么不用CentOS而用Ubuntu作为生产环境的运行平台?这个我也比较好奇,公司订的只能沿用传统,从使用成本的角度来说,此举也是值得肯定的。 测试环境 腾讯云 Ubuntu 16.04 阿里云 Ubuntu 16.04 开启Root账号ssh登录 1.修改配置文件 使用命令:sudo vi /e 阅读全文
posted @ 2018-06-07 19:05 磊哥|www.javacn.site 阅读(3508) 评论(0) 推荐(1) 编辑
摘要:本文介绍fabric.js框架使用,以及使用fabricjs打造一个高级画板程序. 高级画板功能介绍 全局绘制颜色选择 护眼模式、网格模式切换 自由绘制 画箭头 画直线 画虚线 画圆/椭圆/矩形/直角三角形/普通三角形/等边三角形 文字输入 图片展示及相关移动、缩放等操作 删除功能 (文末附:画板G 阅读全文
posted @ 2018-04-04 12:01 磊哥|www.javacn.site 阅读(10244) 评论(1) 推荐(2) 编辑
摘要:应用情景 经典使用情景:js的一些事件,比如:onresize、scroll、mousemove、mousehover等; 还比如:手抖、手误、服务器没有响应之前的重复点击; 这些都是没有意义的,重复的无效的操作,设置对整个系统的影响还可能是致命的,所以我们要对重复点击的事件进行相应的处理! 节流函 阅读全文
posted @ 2018-02-01 19:40 磊哥|www.javacn.site 阅读(8284) 评论(2) 推荐(0) 编辑
摘要:前言 这本由David Flanagan著作,并由淘宝前端团队译的《JavaScript权威指南》,也就是我们俗称的“犀牛书”,算是JS界公认的“圣经”了。本书较厚(有1004页),读起来颇费功夫,但作为JavaScript(下文简称:JS)相关从业者,我还是鼎力推荐,一定要读完这本经久不息,好评如 阅读全文
posted @ 2018-01-31 20:15 磊哥|www.javacn.site 阅读(2628) 评论(1) 推荐(5) 编辑
摘要:Session本质 提到Session我们能联想到的就是用户登录功能,而本身我们使用Session的基础是通过url进行访问的,也就是使用http协议进行访问的,而http协议本身是无状态的,那么问题来了服务器端是怎么验证客户端身份的? 答:服务器端和客户端验证的联系就是sessionid,登录成功 阅读全文
posted @ 2018-01-24 10:46 磊哥|www.javacn.site 阅读(2108) 评论(0) 推荐(1) 编辑
摘要:前言 数组去重已经是一个老生常谈的问题了,依然经久不息,经过岁月的变迁es标准的升级迭代,似乎有越来越多的方法和方式供我们使用,那么那种方式才是最优的?那种才是最简洁的?这个我们一起来探讨。 省略:传统的递归方法,这里我就不说了,是最传统也是最笨的方法。 方法一:es5使用filter 使用Arra 阅读全文
posted @ 2018-01-23 16:04 磊哥|www.javacn.site 阅读(417) 评论(0) 推荐(0) 编辑
摘要:使用场景 在Node版本快速更新迭代的今天,新老项目使用的node版本号可能已经不相同了,node版本更新越来越快,项目越做越多,node切换版本号的需求越来越迫切,传统卸载一个版本在安装另一个版本的方式太过于麻烦,这也是nvm能够流行的原因。 下载nvm 打开下载地址:https://github 阅读全文
posted @ 2018-01-20 10:56 磊哥|www.javacn.site 阅读(1000) 评论(0) 推荐(0) 编辑
摘要:定义 Object.keys 定义:返回一个对象可枚举属性的字符串数组; Object.getOwnPropertyNames 定义:返回一个对象可枚举、不可枚举属性的名称; 属性的可枚举性、不可枚举性 定义:可枚举属性是指那些内部 “可枚举” 标志设置为 true 的属性,对于通过直接的赋值和属性 阅读全文
posted @ 2018-01-19 18:19 磊哥|www.javacn.site 阅读(2365) 评论(0) 推荐(0) 编辑
摘要:1、array操作关键字: pop() 删除最后一个;push最后添加一个或者多个;reverse颠倒数组;shift删除第一个元素;unshift首部添加元素;concat衔接两个数组;join把数组按照指定字符变为字符;slice(1,1)截选数组元素; 2、js闭包的优缺点: 闭包是有权访问另 阅读全文
posted @ 2017-11-29 17:04 磊哥|www.javacn.site 阅读(9771) 评论(0) 推荐(0) 编辑
摘要:nodejs + nginx获取真实ip分为两部分: 第一、配置nginx; 第二、通过nodejs代码获取; 其他语言也是一样的,都是配置nginx之后,在http头里面获取“x-forwarded-for”. 第一、配置nginx 第二、nodejs获取真实ip 阅读全文
posted @ 2017-10-18 17:38 磊哥|www.javacn.site 阅读(1885) 评论(0) 推荐(0) 编辑
摘要:VueJs为客户端语言,所以部署的时候是不需要基于nodejs或其他服务器运行环境,只需要像其他静态站点的方式发布就可以了,下面介绍一下VueJs具体发布的流程还有需要注意的点。 先来看VueJs最终生成的文件目录: 具体的步骤如下: 1.vue项目根目录/config/index.js更改资源生成 阅读全文
posted @ 2017-05-26 20:03 磊哥|www.javacn.site 阅读(8859) 评论(0) 推荐(0) 编辑
摘要:一、IDE的选择: VsCode和WebStorm都是不错的选择,说一下两者的优缺点,调试便捷性来说两者不相上下. WebStorm缺点:性能方面VsCode远好于WebStorm; WebStorm优点:代码引用追踪Ws有VsCode无,控制台输出WS有着色能看出那块代码有问题,VsCode无着色 阅读全文
posted @ 2017-05-13 15:28 磊哥|www.javacn.site 阅读(33019) 评论(6) 推荐(0) 编辑
摘要:一、从HelloWorld说起 任何语言的都是从Hello World开始的,VueJs也不例外,直接上代码: 二、常用指令 v-x的使用 1.v-if/v-else 移除或插入DOM; 2.v-show 显示或隐藏DOM(相当与设置display:none;); 3.v-model 双向数据绑定; 阅读全文
posted @ 2017-01-02 18:00 磊哥|www.javacn.site 阅读(13778) 评论(5) 推荐(2) 编辑
摘要:如果上述代码不能适用所有情景,适用调用前的字符length和处理后的字符长度去对比,如果不相等,说明文字里面包含表情字符。 阅读全文
posted @ 2016-06-21 13:58 磊哥|www.javacn.site 阅读(1868) 评论(0) 推荐(0) 编辑
摘要:简介 1.aes加密简单来说,在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。高级加密标准已然成为对称密钥加密中最流行的算法之一。 2.AES的区块长度固定为128 比特,密钥长度则可以是128,192或25 阅读全文
posted @ 2016-05-21 15:47 磊哥|www.javacn.site 阅读(23765) 评论(1) 推荐(1) 编辑
摘要:1、字符串查找es5使用是indexOf() 返回字符第一次出现的位置int值es6新增了3个方法:includes()/startsWith()/endWith()返回bool值includes => 是否包含字符startsWith => 首字母是否包含字符endWith => 末尾是否包含字符 阅读全文
posted @ 2016-03-19 18:11 磊哥|www.javacn.site 阅读(543) 评论(0) 推荐(0) 编辑
摘要:变量的解构赋值:ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。 以前的写法: es6允许的写法: 一般用途: 1、交换变量的值 2、函数返回多个值 3、函数的无次序定义 4、参数的默认值 5、遍历map解构 阅读全文
posted @ 2016-03-19 17:23 磊哥|www.javacn.site 阅读(421) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示