赞了文章2019-09-27
原文地址 Vue 模板编译原理 关于vue的内部原理其实有很多个重要的部分,变化侦测,模板编译,virtualDOM,整体运行流程等。 之前写过一篇《深入浅出 - vue变化侦测原理》 讲了关于变化侦测的实现原理。 那今天主要把 模板编译 这部分的实现原理单独拿出来讲一讲。 本...
回答了问题2019-07-25
请求是从页面发出去的,又不是从cdn发出去的
回答了问题2019-04-18
搜一下背包问题
赞了文章2019-03-18
nginx在应用程序中的作用 解决跨域 请求过滤 配置gzip 负载均衡 静态资源服务器 nginx是一个高性能的HTTP和反向代理服务器,也是一个通用的TCP/UDP代理服务器,最初由俄罗斯人Igor Sysoev编写。 nginx现在几乎是众多大型网站的必用技术,大多数情况下,我们不需要亲...
回答了问题2017-07-04
回答了问题2017-07-04
{代码...}
赞了回答2017-03-30
这个正则表达式不是匹配的字符,而是“位置”?=作用的范围就是我标红的两个括号\B(?=(\d{3})+(?!\d))它的意思是什么呢?就是说我要匹配的这个“位置”,它后面应该是一下内容——三个数字为一组,有若干个这样的组,且这样的组匹配结束后,后面没有数字了,匹配出来的位置...
赞了回答2017-03-29
非获取匹配,正向肯定预查,在任何匹配pattern的字符串开始处匹配查找字符串,该匹配不需要获取供以后使用。例如,“Windows(?=95|98|NT|2000)”能匹配“Windows2000”中的“Windows”,但不能匹配“Windows3.1”中的“Windows”。预查不消耗字符,也就是说,在一个匹配发生后...
提出了问题2017-03-29
发布了文章2017-03-29
常常见到这种场景,数字比较大时每隔3位用逗号分隔开 思路就是如果是小数的话先用split分开得到整数部分,然后反转整数部分的字符串用正则每3个数字加一个逗号然后再反转回去拼接上小数部分。 在网上看到了一种实现代码,这个正则还没看懂: {代码...} 以下是我的实...
发布了文章2017-03-27
Expires 过期时间,这是HTTP1.0就有的。客户端在首次请求服务器资源的时候服务器设置一个资源的过期时间,这个时间是绝对的,如果设置的缓存策略是这个,那么浏览器再次请求的时候会跟所请求资源的过期时间比对一下,如果在过期时间之内,那么从本地读取,否则会看看...
赞了文章2017-03-26
Https,SSL 平时我们都听的挺多,知道它是用来加密的,但是对于里面的工作原理不是很清楚,所以在这里我也总结下 SSL 的工作原理,希望大家能够帮助到大家。
发布了文章2017-03-24
公司用到的防止xss攻击的组件代码 {代码...}
发布了文章2017-03-20
第一个元素就是最大的,然后跟最后一个元素交换,把最大的弹出栈第一个元素与它的左右子节点比较,左右子节点中较大的比它大则交换 然后再递归地这样交换下去直到没有比它大的子节点或者没有子节点。
赞了回答2017-03-18
2017-4-12 更新,美化下输出结果。 {代码...} ====================== 2017-3-22 代码再次更新,受一道面试题的启发。重新优化了代码(不等待时,setTimeout的间隔时间为0): {代码...} 得到启发的代码如下: {代码...} 以下是原答案: 重新来答一遍,这次是认真的...
赞了回答2017-03-18
我个人是使用了异步来实现的。 Man类内部维护了一个任务队列,所有的类方法都会直接操作任务队列的顺序。 由于类生成时候设定的异步函数必须要等主进程完成之后才会启动,所以它是不会影响到主进程时候的任务队列操作的。 主进程运行结束,类定义时候的setTimeout进...
赞了回答2017-03-18
赶项目进度中换换脑子,随手试写。可以添加新方法,可以任意组合。感觉写得一般。 {代码...} {代码...}
回答了问题2017-03-18
哈哈 自己的答案
发布了文章2017-03-18
实现函数LazyMan,使得: LazyMan('Hank'); 输出Hi Hank! LazyMan('Hank').eat('dinner');输出Hi Hank!Eat dinner! LazyMan('Hank').sleep(5).eat('dinner'); 输出Hi Hank!//等待五秒Eat dinner! LazyMan('Hank').sleepFirst(5).eat('dinner');输出//等待五秒Hi Hank...
提出了问题2017-03-18