06 2017 档案
摘要:一、Promise的错误捕获方式 1、3 种捕获方式 rejected catch 全局捕获示例:unhandledrejection window.addEventListener('unhandledrejection', function(event) { // the event objec
阅读全文
摘要:1、什么是编译? 编译就是一种转换技术,从一门编程语言到另一门编程语言,从高级语言转换成低级语言,或者从高级语言到高级语言,这样的转换技术。 2、什么是高级语言?什么是低级语言? 低级语言:是与机器有关的,涉及到寄存器、cpu指令等,特别“低”,描述具体在机器上的执行过程,比如机器语言、汇编语言、字
阅读全文
摘要:通常的前端部署方式:把前端打包好的代码放到服务器(linux)目录下,然后通过nginx转发出去。但是会有前端SPA应用比较经典的白屏问题。 后来了解到有些公司将前端项目部署在 OSS 里,还可以进行加速解析,实现解决前端代码白屏问题。故而学习了解下。 (前提要有一个已经备案过的域名) 一、阿里对象
阅读全文
摘要:今天,分享一个实际业务中能够用得上的动画技巧。巧用逐帧动画,配合补间动画实现一个无限循环的轮播效果. 有同学不禁会发问,这不是个非常简单的位移动画么?我们来简单分析分析,从表面上看,确实好像只有元素的 transfrom: translate() 在位移,但是注意,这里有2个需要注意的点: (1)这
阅读全文
摘要:1、css样式:文字本身的大小不兼容解决 问题原因:同样是font-size:14px的宋体文字,在不同浏览器下占的空间是不一样的:IE下实际占高16px,下留白3px,ff 下实际占高17px,上留白1px,下留白3px,opera下就更不一样了。 解决方案:给文字设定 line-height ,
阅读全文
摘要:一、同域:1、父页面获取子页面元素:注意:onload事件jQuery获取:$("iframe").contents().find("holder")......; (嵌套三层,或者更多时)$('iframe').contents().find('iframe').contents().find("
阅读全文
摘要:两端对齐实现 一般加上下面2行就可实现 但是对于中英文混杂的情况,中英文难一起实现对齐,原因在下面有分析,需要如下js来控制 justify实现原理 要理解原理,我们首先要搞清楚文本的两端对齐声明text-align:justify起作用的本质。首先,大家要知道,text-align:justify
阅读全文
摘要:一、classnames库的使用 React 原生动态添加多个className会报错: import style from './style.css' <div className={style.class1 style.class2}</div> 想要得到最终渲染的效果是: <div class
阅读全文
摘要:一、需求背景:css 文本溢出时在开头(左边)显示省略号 1、首先设置溢出文本显示省略号 .nowrap { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } 2、然后设置让文本从右到左显示 注意需要设置到最后一个层级
阅读全文
摘要:1、验证文件名:(亲测有效) var reg = /^(?!\.)[^\\\/:\*\?"<>\|]{1,255}$/; var str = 'gggggggggggkkkk'; reg.test(str); 微软文件名命名规则:(1)不允许添加:\ / " ? < > * | 等9个字符;(2)不
阅读全文
摘要:一、预览及真机调试时包超过2M时 message:Error: 系统错误,错误码:80051,source size 2069KB exceed max limit 2MB 预览及真机调试时包超过2M时,可在开发者工具右侧“详情”中勾选“预览及真机调试时主包、分包体积上限调整为4M”即可解决。 二、
阅读全文
摘要:结果依次: 关于上述代码优化: 1、首先,对数据值需要做下判断:如果是空值或非字符类型,则没必要继续进行。 平时写代码时需要注意多做非空判断和数值判断,特别是处理后台接口数据的时候,数据都是后台返回来的,不知道到底是什么样的数据,有没有数据,所以判空是比较重要的。 2、其次,getMaxLength
阅读全文
摘要:“在浏览器里,从输入 URL 到页面展示,这中间发生了什么? ”这是一道经典的面试题,能比较全面地考察应聘者知识的掌握程度,其中涉及到了网络、操作系统、Web 等一系列的知识。在面试应聘者时也必问这道题,但遗憾的是大多数人只能回答其中部分零散的知识点,并不能将这些知识点串联成线,无法系统而又全面地回
阅读全文
摘要:以往我们只是习惯于通过数组下标来访问正则匹配到的分组,但分组达到4、5个时,标识起来就会非常麻烦。V8早已实现了正则命名分组提案,只是我们很少使用,本文将介绍JS的正则命名分组。 一、以往的做法 假设要使用正则匹配一个日期的年月日,以往我们会这样做: const RE_DATE = /(\d{4})
阅读全文
摘要:1、问题背景: 有个业务限制普通用户浏览文章数单日最多80,故我们需要自定义一个异常类。我们之前有自定义内容不存在的404资源异常类,可以参考编写 // 1、使用处,抛出自定义异常类 // 限制普通用户当天最多只能看80篇文章 if (isEsUser) { int viewOneDay = kno
阅读全文
摘要:一、server_name 详解 当Nginx接到请求后,会匹配其配置中的server模块。匹配方法就是靠请求携带的host和port正好对应其配置中的server_name 和listen。如果做过ip和域名绑定,ip和域名二者是对等的。 server_name指令主要用于配置基于名称的虚拟主机,
阅读全文
摘要:一、常规属性与排序属性 function Bar() { this[2] = 2 this[3] = 1 this['b'] = 'b' this[1] = 1 this['a'] = 'a' } const bar = new Bar() for (key in bar) { console.lo
阅读全文
摘要:一、SQL中 UNNEST 是什么 如果想要将ARRAY转换为一组行,即平展操作,可以使用UNNEST运算符。(注意函数名 unnest 不要写错了) UNNEST获取一个ARRAY,然后平铺成一个表,表中的每一行都是该ARRAY中的元素。 select unnest('{1,2,3,4}'::in
阅读全文
摘要:1、第一种:使用randomString,e表示长度,默认32位 function randomString(e) { var e = e || 32, t = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678", a = t.length, n =
阅读全文
摘要:一、问题背景 我们一个服务器设置了2个域名,分别对应2个项目。监听 80 端口写了2个 server_name。比如这样server_name配置改为: # 只列出了我们关心的配置,省略了其他无关部分 server { server_name www.abc.com test.dce.com; }
阅读全文
摘要:在衡量 Web 页面性能的时候有一个重要的指标叫“FP(First Paint)”,是指从页面加载到首次开始绘制的时长。这个指标直接影响了用户的跳出率,更快的页面响应意味着更多的 PV、更高的参与度,以及更高的转化率。那什么影响 FP 指标呢?其中一个重要的因素是网络加载速度。 一个数据包的“旅程”
阅读全文
摘要:一、数组排序 Array.sort()方法可以传入一个函数作为参数,然后依据该函数的逻辑,进行数组的排序。 一般用法:(数组元素从小大进行排序) var a = [9, 6, 5, 7, 11, 52, 15]; a.sort((a, b) => a-b) // (7) [5, 6, 7, 9, 1
阅读全文
摘要:1、实参: 全称为"实际参数",是在调用时传递给函数的参数。实参可以是常量、变量、表达式、函数等。 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参。 因此应预先用赋值,输入等办法使实参获得确定值。 2、形参 全称为"形式参数",由于它不是实际存在变量,所以
阅读全文
摘要:无论你是想要设计高性能 Web 应用,还是要优化现有的 Web 应用,你都需要了解浏览器中的网络流程、页面渲染过程,JavaScript 执行流程,以及 Web 安全理论,而这些功能是分散在浏览器的各个功能组件中的,比较多、比较散,要怎样学习才能掌握呢?通过浏览器的多进程架构的学习,你就可以把这些分
阅读全文
摘要:一个 TCP 连接过程包括了建立连接、传输数据和断开连接三个阶段。 而 HTTP 协议,正是建立在 TCP 连接基础之上的。HTTP 是一种允许浏览器向服务器获取资源的协议,是 Web 的基础,通常由浏览器发起请求,用来获取不同类型的文件,例如 HTML 文件、CSS 文件、JavaScript 文
阅读全文
摘要:一、mix-blend-mode 了解 1、什么是混合模式? 熟悉PS的人都应该知道混合模式: SVG以及Canvas中也有混合模式,本质上都是一样的。 2、该CSS属性作用是让元素内容和这个元素的背景以及下面的元素发生“混合”。 { mix-blend-mode: normal; // 正常 mi
阅读全文
摘要:用来进行web开发的工具有很多,Tomcat是其中一个开源的且免费的java Web服务器,是Apache软件基金会的项目。电脑上安装配置Tomcat的方法和java有些相同,不过首先需要配置好java的环境才行。 用来进行web开发的工具有很多,Tomcat是其中一个开源的且免费的java Web
阅读全文
摘要:一、浅拷贝与深拷贝 浅拷贝 : 只是将数据中所有的数据引用下来,依旧指向同一个存放地址,拷贝之后的数据修改之后,也会影响到原数据的中的对象数据。例如:Object.assign(),...扩展运算符 深拷贝: 将数据中所有的数据拷贝下来,对拷贝之后的数据进行修改不会影响到原数据。 二、JSON.pa
阅读全文
摘要:1、获取一个随机布尔值 (true/false) 这个函数使用 Math.random() 方法返回一个布尔值(true 或 false)。Math.random 将在 0 和 1 之间创建一个随机数,之后我们检查它是否高于或低于 0.5。这意味着得到真或假的几率是 50%/50%。 const r
阅读全文