- 博客(16)
- 问答 (1)
- 收藏
- 关注
原创 使用SVG绘制圆形、扇形、文字实现转盘抽奖效果
效果图如下:思路:1.先引入SVG<!--html--><!--因为转盘中的文字及奖品个数都是动态的,所以在js中生成svg字符串,利用vue的v-html渲染到页面--><svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg" v-
2018-08-18 21:07:35 7036 2
原创 TCP/IP协议族概览(持续更新)
TCP/IP 协议族按层次分别分为以下 4 层(由高到低): 应用层、 传输层、 网络层和数据链路层。分别介绍各层包含的协议。一、应用层 1.HTTP协议 2.FTP协议(文件传输协议) 3.DNS协议(域名服务系统):在传输层使用UDP协议 4.电子邮件协议二、传输层 1.TCP协议 2.IP协议三、网络层(主管路由,传输路线)ICMP协议当路由器或者客户端接...
2018-07-06 17:58:15 335
原创 从输入网址到显示页面全过程概览(持续更新)
上图为宏观的总体过程,接下来是一步步的讲解一、应用程序客户端部分(通常为浏览器)1、对URL进行解析,获取协议、域名、访问的文件名2、按照相应的协议生成请求消息(请求行,消息头(通用头,请求头,实体头 ),请求实体)3、DNS查询解析DNS本地缓存和DNS服务器缓存DNS解析器其实就是操作系统中的socket库(用于调用网络功能的程序组件的集合)的一段代码。浏览器等应用程序的源码里会调用这段解析器...
2018-06-22 11:19:25 640
原创 git常用总结
感觉下图非常好,有助于理解git的工作流程(摘自阮一峰老师的博客http://www.ruanyifeng.com/blog/2015/12/git-cheat-sheet.html)把自己常用的git命令做出如下总结:(方括号表示应该填入的信息,实际中不会出现方括号)1.创建仓库并建立远程连接的过程(默认为已有私钥公钥和git账户的情况)2.关于本地分支列出所有分支 git branch 新建...
2018-05-08 17:58:46 271
原创 关于webWorker的理解和简单例子
一、理解webworker并没有改变js单线程的本质,webworker多线程指的是浏览器多线程,因为浏览器可以提供多个js引擎的实例,每个实例可以独立的运行相应的程序,但在每个js引擎实例中js脚本还是在单线程得执行,每个实例就相当于一个webworker。二、注意点webworker与主线程之间不能共享资源和作用域,通过异步事件在线程之间传递消息。webworker中不能访问window,do...
2018-04-14 12:02:31 3994
原创 利用递归进行希尔排序
今天在学习希尔排序的时候,发现网上有很多希尔排序的算法,大同小异,但是看了一个小时没看懂,于是决定先百度一下希尔排序的原理再看网上的算法,等查阅了希尔排序的原理后,我发现网上很多教程里的希尔排序算法并不是很契合希尔排序的思想,于是自己写了一下希尔排序的算法。这里的增量序列选择了len/2,len/2/2...,直到为1,因为这是希尔建议的增量序列希尔排序原理:希尔排序是把记录按下标的一定增量分组,...
2018-04-01 16:34:12 1024
原创 Node.js中实时显示下载进度并解压文件
在这个功能中,我使用了以下四个模块的一些方法,关于这四个模块的详情可以点击下方查阅: request,用来请求资源 progress-stream,用来显示进度信息 unzip,用来解压缩 fs,用来创建读写流该功能的流程是: 创建写入流 fs.createWriteStream 请求zip文件 request.get(options) 在request请求的回调函数中...
2018-03-31 19:57:04 7793 4
原创 利用css实现元素水平垂直居中的方法(分情况讨论)
首先需要说明,根据标准盒模型(这里暂且不关注低版本IE的盒模型),我们在css中设置的width指的是content-width,padding,margin,top,left这些属性为百分数时,计算的依据为父元素的content-width+left-padding+right-padding1.父div和子div都有固定宽高 情景如下:div#content在div#wrap中垂直居中<...
2018-03-25 15:32:40 360
原创 关于JS数据类型的一些知识点
一、数组1.使用delete 运算符 可以删除数组中的元素,但是数组的长度不会改变2.数组是通过数字进行索引的,但是也可以包含键值和属性,比如 var a = []; a ["foo"] = "bar";访问a.foo或者a["foo]都可以访问到“bar”,但是不算在数组长度里,a.length 的结果是0。当这个键值可以被强制转换为数字类型时,就表示数组长度了,例如: a["12"]=11;那...
2018-03-16 15:01:14 175
原创 【笔记】面向对象编程--高级程序设计第六章个人总结
面向对象的程序设计一、创建对象及原型模式1、不过,要明确的真正重要的一点就是,这个连接存在于实例与构造函数的原型对象之间,而不是存在于实例与构造函数之间。2、Person 的每个实例——person1 和 person2 都包含一个内部属性,该属性仅仅指向了 Person.prototype;换句话说,它们与构造函数没有直接的关系。3、有两种方式使用 in 操作符:单独使用和在 for-in 循环...
2018-03-04 19:23:55 203
原创 【笔记】使用上传头像插件和日历插件
头像插件:<!--上传头像的样式--><link href="../../libs/cropper/cropper.min.css" rel="stylesheet"/><link href="../../libs/cropper/sitelogo.css" rel="stylesheet"/><link href="
2018-03-04 19:08:07 254
原创 关于js的一些细节--隐式类型转换
var a = false;var b = Object(a);//强制转换为对象console.log(Object.prototype.toString.call(b));//object Booleanif (!b) {//执行不到这里,b是一个布尔值对象,永远是true console.log("11");}var aa = new Date();//当前时间字符串var ...
2018-03-04 19:05:03 167
原创 fullCalendar使用
js部分代码如下所示,html部分只需要一个id为calendar的包裹元素,一般为div$('#calendar').fullCalendar({ //lang: 'zh-cn', titleFormat: { month: 'YYYY年 MMMM月' }, buttonText: { today: '今天', }, mon...
2017-10-24 15:11:47 320
原创 JS对数组的处理(包含ES6)
JS有很多处理数组的方法,这些方法都是Array内置对象的方法。该文章是对这些方法的用途的总结,方便翻阅,并不提供具体使用示例。众所周知,数组是引用类型,所以我把这些方法分为两类,一类是直接对原数组操作,会改变原数组的方法,另一类是返回一个副本,对这个副本的操作不会改变原数组的方法。另外,我把ES6新增方法放在后面列出来。一、会改变原数组的方法1.splice(index,num,addItem)...
2017-10-11 16:18:15 821
原创 JS中的类型
1.使用typeof 运算符 (所以其后的变量最好不用括号括起来) 来查看类型时,有四个特殊情况:①typeof null 的结果是 “object”,而不是七大类型中的null,这是由来已久的bug②typeof function a () {...} 的结果是“function”,但function不是js中的七大数据类型,只是Object的一个子类型,按理应该输出object,但输
2017-08-31 14:26:22 389 1
原创 访问本地json文件的方法
情景:在一个js文件中访问该工程中的另一个本地json文件这个问题本身很好解决,这里提供两个方法,先介绍一些可能会让初学者迷惑的知识点:1.URL编码:利用一个百分号和16进制数字来对字符进行编码,JS提供了encodeURIComponent()和decodeURIComponent()方法来进行URL编码和解码2.浏览器端的JavaScript发送HTTP请求所用的接口叫做XMLH
2017-08-14 15:26:27 27108 1
空空如也
怎么用jquery获取iframe中的子页面的scrollHeight
2017-06-16
TA创建的收藏夹 TA关注的收藏夹
TA关注的人