- 博客(31)
- 收藏
- 关注
转载 微信扫码登录是如何实现的 - 简单描述
浏览器获得一个唯一的、临时的uid,通过长连接等待客户端扫描带有此uid的二维码后,从长连接中获取客户端上报给服务器的账号信息进行展示,并在客户端点击确定后,获得服务器授信的令牌,进行随后的信息交互过程。在超时、网络断开、其他设备登录后,此前获得的令牌或丢失、或失效,对授权过程形成有效的安全防护。转载于:https://www.cnblogs.com/sunww/p/11412826...
2019-08-26 15:32:00
304
转载 数组去重
1、Set去重var arr = [1,2,2,4,3,4,1,3,2,7,5,6,1]var newArr = new Set(arr); // { 0:1, 1:2, 2:4, 3:3, 4:7, 5:5, 6:6}2、indexOffunction fn( arr ){ let newArr = []; arr.forEach( (val)=>{...
2019-08-13 17:32:00
114
转载 DOM事件类
1、DOM级别和DOM事件级别DOM级别:DOM0级、DOM1级、DOM2级、DOM3级DOM事件级别:DOM0级事件处理、DOM2级事件处理、DOM3级事件处理1) DOM0级事件 <botton type="button" onclick="showFn()"></button> function showFn(){ alert("he...
2019-08-13 14:56:00
139
转载 作用域和闭包
作用域:规定变量在什么地方可以用,在什么地方不能用。// 全局作用域function a1(){ // a1 作用域 function a2(){ // a2 作用域 }}闭包:一个具有封闭的对外不公开的包裹结构或者空间为什么函数可以构成闭包?闭包是一个具有封闭与包裹功能的结构,是为了实现具有私有访问空间的函数的。函数内部定义...
2019-08-12 15:39:00
86
转载 同源和跨域
什么是同源策略?限制从一个源加载的文档或者脚本如何与来自另一个源的资源进行交互。一个源指的是主机名、协议和端口号的组合,必须相同跨域通信的几种方式:1、JSONP2、Hash3、postMessage4、WebSocket5、CORSJSONP原理基本原理:利用script标签的异步加载特性实现。给服务端一个回调函数,服务器返回一个...
2019-08-12 14:59:00
81
转载 script标签的defer、async的区别
defer是在HTML解析完成之后才会执行,如果是多个,按照加载的顺序依次执行。async是在加载完成后立即执行,如果是多个,执行顺序和加载顺序无关。转载于:https://www.cnblogs.com/sunww/p/11340133.html...
2019-08-12 14:54:00
96
转载 前端路由的原理
什么是路由:根据不同的url地址展示不同的内容或页面。使用场景:更多的应用在单页面上。两种实现前端路由的方式:1、HTML5 History两个新增的API:history.pushStute、history.replaceState两个API都会操作浏览器的历史记录,而不会引起页面的刷新2、Hash 就是url中看到的#。我们需要一个根据监听哈希变化触发的事件h...
2019-08-12 14:50:00
95
转载 你做过哪些性能的优化
1、减少HTTP请求1) HTML优化: 使用语义化标签 减少iframe 避免重定向2) CSS优化: 布局代码写前面 删除空样式 不滥用浮动、字体,需要加载的网络字体根据需求添加 选择器性能优化 避免使用表达式 避免用id写样式 压缩代码3) JS优化 压缩代码 减少重复代码4) 图片优化 ...
2019-08-12 14:36:00
310
转载 当new Foo()时发生了什么
1、创建了一个新对象2、将新创建的空对象的隐式原型指向其构造函数的显示原型3、将this指向这个新对象4、如果无返回值或者返回一个非对象值,则将新对象返回;如果返回值是一个新对象的话,那么直接返回该对象。转载于:https://www.cnblogs.com/sunww/p/11338804.html...
2019-08-12 11:44:00
214
转载 JS实现继承的几种方式
1、借用构造函数实现继承function P1(){ this.name = "P1";}function C1(){ P1.call(this); this.type = "C1";}缺点:C1无法继承P1的原型对象,只是部分继承2、借用原型链实现继承function P2(){ this.name = "P2"; thi...
2019-08-12 11:40:00
70
转载 CSS3 box-sizing的作用
设置CSS盒模型为标准模型或者IE模型。标准模型:宽高只包括contentIE模型:包括border和paddingbox-sizing:1、content-box:默认值,border、padding不计算入width之内2、padding-box:padding计算入width之内3、border-box:border和padding计算入width之内...
2019-08-12 11:23:00
92
转载 前端安全
前端安全问题主要有XSS、CSRF攻击。XSS:跨站脚本攻击。它允许用户将恶意代码植入到提供给其他用户使用的页面中,即脚本注入。XSS的防御措施:1、过滤转义输入输出2、避免使用eval、new Function等执行字符串的操作3、使用cookie的heepOnly属性4、使用innerHTML、document.write的时候,如果是用户输入的,需要过...
2019-08-12 11:02:00
73
转载 js面试题 - 1
一、网页三要素是什么?HTML内容 + CSS外观 + JS行为二、JS是什么?JS是一门解释型语言,主要特点有:弱类型,动态,基于原型的面向对象三、JS的数据类型有哪些?string、number、boolean、array、object、null四、怎么判断一个数组?0) typeof:除了string、number、boolean、underfind之外...
2019-08-06 17:44:00
79
转载 前端面试知识点汇总 - HTML
一、HTML5新特性 1、语义化标签 - 为页面提供更好的界面结构 header - 头部 footer - 尾部 nav - 导航 section - 段落 article - 独立内容 aside - 侧边栏 command - 命令按钮 details - 标题 dialog - 对话框...
2019-08-05 15:06:00
88
转载 微信小程序 textarea读取到的文本换行问题 以及保存回车换行到后台
使用的textarea来获取用户输入的内容,直接获取textarea的内容,断点会发现如果用户输入了回车会带有↵这个符号,如果你直接保存到数据库,在拿出来,这个符号会变成?,就是不识别。我做的方法是往后台提交的时候,将↵符号替换成自己设置的符号,拿出来的时候再将他替换成\n。将↵回车符替换为标识符,如果直接存,数据库的数据会显示? 或者空格 //&hc表示换行 ...
2019-08-05 09:52:00
4815
转载 前端面试题-url、href、src
一、URL的概念统一资源定位符(或称统一资源定位器/定位地址、URL地址等,英语:Uniform Resource Locator,常缩写为URL),有时也被俗称为网页地址(网址)。如同在网络上的门牌,是因特网上标准的资源的地址(Address)。二、URL的格式2.1 标准格式协议类型:[//服务器地址[:端口号]][/资源层级UNIX文件路径]文件名?查询...
2019-08-05 09:51:00
163
转载 组件、模块的区别是什么?
组件化就是做一个网站,把导航栏拆成一个组件,一个一个回答区域拆成一个组件,编辑区是一个组件,页脚是一个组件,等等。。你可以尽情拆分。一个组件包含了html、css、js代码,可以简单理解为页面的一块。组件化更多关注的UI部分,页面的每个部件,比如头部,内容区,弹出框甚至确认按钮都可以成为一个组件,每个组件有独立的HTML、css、js代码。可以根据需要把它放在页面的任意部位,也可以和其他...
2019-08-05 09:50:00
757
转载 Vue的双向数据绑定原理是什么?
vue是采用数据劫持,并且使用发布-订阅者的开发模式。原理是观察者observer通过Object.defineProperty()来劫持到各个属性的gettersetter,在数据变动的时候,会被observer观察到,会通过Dep通知数据的订阅者watcher,之后进行相应的视图上面的变化。具体实现步骤:第一步:需要observe的数据对象进行递归遍历,包括子属性对象的属...
2019-08-05 09:47:00
67
转载 网页打开word PPT文档
https://view.officeapps.live.com/op/view.aspx?src=需要打开的地址https://view.officeapps.live.com/op/view.aspx?src=http://static.cloudscareer.cn/lgeI1Szyeqb4COlxMamqK3s0p58x转载于:https://www.cnblogs.co...
2019-08-05 09:38:00
178
转载 sublime text 如何支持vue提示(语法高亮)
找到vue-syntax-highlight 安装重启即可转载于:https://www.cnblogs.com/sunww/p/11287714.html
2019-08-02 11:48:00
598
转载 javascript 获取当前 URL 参数的两种方法
//返回的是字符串形式的参数,例如:class_id=3&id=2&function getUrlArgStr(){ var q = location.search.substr(1); var qs = q.split('&'); var argStr = '' if(qs){...
2019-08-02 11:31:00
214
转载 js中获取键盘事件
<script type="text/javascript" language=JavaScript charset="UTF-8"> document.onkeydown=function(event){ var e = event || window.event || arguments.callee.caller.argume...
2019-08-02 11:24:00
182
转载 localStorage使用总结
一、什么是localStorage、sessionStorage在HTML5中,新加入了一个localStorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localStorage中一般浏览器支持的是5M大小,这个在不同的浏览器中localStorage会有所不同。二、localStor...
2019-08-02 11:24:00
108
转载 页面宽高
页可见区域宽: document.body.clientWidth;网页可见区域高: document.body.clientHeight;网页可见区域宽: document.body.offsetWidth (包括边线的宽);网页可见区域高: document.body.offsetHeight (包括边线的宽);网页正文全文宽: document.body.scrol...
2019-08-02 11:22:00
104
转载 JS动态修改微信浏览器中的title
var$body = $('body');document.title ='这里是要修改成的新标题';var$iframe = $('<iframe src="/favicon.ico"></iframe>');$iframe.on('load',function() {setTimeout(function() {...
2019-08-02 11:21:00
211
转载 移动端手势滑动检测
// 滑动方向检测var startx, starty;//获得角度function getAngle(angx, angy) { return Math.atan2(angy, angx) * 180 / Math.PI;};//根据起点终点返回方向 1向上 2向下 3向左 4向右 0未滑动function getDirection(startx, starty, endx, e...
2019-08-02 11:21:00
121
转载 vue如何解决跨域 - vue配置接口代理proxy
转载于:https://www.cnblogs.com/sunww/p/11287445.html
2019-08-02 11:14:00
746
转载 vue的页面跳转方式和传值、取值
1、通过router-link进行跳转,传递方式:使用query传递参数,路由必须使用path引入,使用params传递参数,路由必须使用name引入<router-link :to="{path: '/home', query: {key: 'hello', value: 'world'}}"> <button>跳转</button>...
2019-08-02 10:47:00
385
转载 Vuex
vuex是什么?vue框架中状态管理。哪种功能场景使用它?场景有:单页应用中,组件之间的状态。音乐播放、登录状态、加入购物车vuex的store有几个属性值?state、mutations、actions、getters四个属性值stateVuex 使用单一状态树,即每个应用将仅仅包含一个store 实例,但单一状态树和模块化并不冲突。存放的...
2019-08-01 16:42:00
85
转载 对vue生命周期的理解
主要有四个阶段:创建前/后,DOM渲染前/后,更新前/后,销毁前/后。对于各个周期的理解:创建前/后:beforeCreated:此时的vue实例还没有挂载元素$el,数据对象data也是undefiend; (没有$el, 没有data)created:vue实例的数据对象data有了,但是$el还没有 (没有$el, 已有data)载入前/后:beforeMount:vue...
2019-08-01 15:38:00
89
转载 CSS - 弹性布局 - flex
兼容:不考虑IE以及低端安卓机(4.3-)容器属性:flex-flow、flex-direction、flex-warpjustify-content、align-items、align-content元素属性:order、flex-grow、flex-shrinkflex-basis、flex、align-self一、flex弹性盒模型 display...
2019-08-01 11:58:00
135
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人