封面图

浏览器UA是如何一步步变成今天这个屎样的

9 月 3 日
阅读 5 分钟
294
为啥Firefox UA里只有Firefox,但是Chrome UA里面不仅有Chrome还有Safari,Edge更过分,里面不仅有Edg(不知道为啥不是Edge),还有Safari和Chrome
封面图

如何优雅的免费推送消息到自己的微信

8 月 10 日
阅读 2 分钟
429
最近发现pushplus和server酱的推送增加了限制,还得认证,加之这俩平台免费数量较少,标题可用字少,于是琢磨着有啥别的渠道可以替换,搜寻良久,还真找到一个,操作简单,限制小,标题可用字数多,最重要的是还不要钱,简直不要太爽,赶紧整理下分享出来。采用本方案最终可以让你达到这样的效果:

封面图

手动点击与代码中调用click方法两者的区别

8 月 7 日
阅读 2 分钟
281
问题描述在看事件循环相关视频的时候发现其中有一个例子不理解,查了资料才明白其中的缘由,遂以志之。问题是这样的: {代码...} {代码...} 要问的是:你手动点击button,打印的log顺序是啥?如果改成用js调用lick的方式,那么输出顺序又是啥? {代码...} 问题解析首先,公布一下答案。第一种情况输出是: {代码...} 第...
封面图

JS中与进制转换有关的函数

3 月 20 日
阅读 1 分钟
342
parseInt最为我们熟知的功能是把传入的参数转为整数,但实际上他可以传入两个参数:parseInt(string, radix),其中radix 是 2-36 之间的整数,表示被解析字符串的基数。当你传入第二个参数后,parseInt会把你传入的string当做radix进制的数据来看,然后把他转换成10进制的形式。举个例子:
封面图

Object.prototype.toString.call()的原理

3 月 19 日
阅读 2 分钟
668
之前只知道Object.prototype.toString.call()可以用来判断数据类型,但是从未想过其原理,今天查资料的时候发现MDN上写的明明白白。
封面图

javascript中的动态集合NodeList&HTMLCollection

2 月 26 日
阅读 2 分钟
550
不知道你有没有在控制台见到过类似这样的输出我们会发现,同样都是获取元素的代码,为啥一个是NodeList,一个是HTMLCollection。那么这俩是啥?又有啥区别,本篇文章我们就聊聊这个。
封面图

DOM映射的特殊情况

2 月 23 日
阅读 2 分钟
509
把querySelectorAll换成getElementsByTagName之后,便会发现,现在的输出就成了我们期望的输出了。通过这个例子我们发现querySelectorAll是DOM映射的一个特殊case。根据《JavaScript高级程序设计(第三版)》的11章11.1.2的描述我们得知:querySelectorAll返回的值实际上是带有所有属性和方法的NodeList,其底层实现则类...
封面图

Github将多个仓库归并到一个仓库的办法

2023-08-16
阅读 2 分钟
1.3k
问题背景问题是这样的,我本地有多个项目,每个项目包含多个工程,一个工程是一个git仓库,所以现状是A项目:A1仓库、A2仓库、A3仓库B项目:B1仓库、B2仓库、B3仓库C项目:C1仓库、C2仓库、C3仓库(是不是突然有点似曾相识的感觉,别说话,继续看)现在我想把这些仓库都推到Github,推上去有个几个目的方便日后在线查看代...
封面图

富文本编辑器空格与普通输入框空格的区别

2021-05-03
阅读 2 分钟
7.2k
经过排查,我的结论是这样的:我们发现富文本里面输入的空格与在textarea input等控件里面输入的空格不一样.以微博的富文本编辑器为例,在里面输入的空格是这样的:保存的也是这样的
封面图

chrome extension开发实战之QQ空间助手

2021-02-27
阅读 11 分钟
5.7k
原文地址: [链接]转载请在文首注明来源TL;DR背景介绍需求分析知识储备文档推荐结构组成组件通信开发调试打包发布问题解决背景介绍本文历时较久,2020年写了一半,写到迷茫,索性搁置,2021年翻出来继续写的;经过了半年多的时间再看,会有一些不一样的理解,存在部分配图风格不一致.但是我会确保内容的正确和表达的一致.2020年...
封面图

深入理解DNS解析过程

2020-08-20
阅读 2 分钟
9.5k
域名系统DNS(Domain Name System)是因特网使用的命名系统,用来把便于人们使用的机器名字转换为IP地址。DNS属于应用层协议,是基于UDP协议的。
封面图

如何理解fn1.call.call(fn2)的结果

2020-08-18
阅读 2 分钟
3k
问题复现有这么一道题: {代码...} 问题分析关于call我们一般知道这些:主要作用是改变函数的this指向传参形式类似function.call(thisArg, arg1, arg2, ...)执行步骤改变调用函数的this指向传参并将调用函数执行所以,对于 {代码...} 这样的输出并不会使我们感到意外,根据上面的已知信息,这段代码的执行逻辑如下: 将fn...
封面图

为何不推荐使用JSON.stringify做深拷贝

2020-08-12
阅读 2 分钟
6.6k
我们知道做深拷贝的时候可以使用递归的方式也可以用JSON.stringify + JSON.parse这种看起来简单的方式。那么JSON.stringify + JSON.parse这种方式真的好用吗?文档告诉我:JSON.stringify + JSON.parse做深拷贝不安全,而且在大数据量的情况下存在性能问题,不推荐使用(其实是JSON.stringify的数据丢失)。
封面图

怎么更好的理解DNS的迭代查询与递归查询

2020-05-03
阅读 1 分钟
5k
我们知道DNS解析的过程中有涉及到向域名解析服务器查询的过程.这种查询主要分两种:迭代查询和递归查询.关于这两种解析方式书上也好,网上也好一般都会这么解释:
封面图

vim添加/删除多行注释最佳实践

2020-03-29
阅读 1 分钟
8.2k
写在前面有些知识点或者技能老是忘记,每次用到都要去搜,索性自己整理下记录下来,方便日后查找查看.vim多行注释进入vim按ctrl + V(大写)(左下角会提示: -- VISUAL BLOCK --)j或者k移动选中需要注释的行按下I键(这时候你看到只有你选中的第一行才有光标闪动),输入#或者//按下esc键,稍等一小会,就ok了vim取消多行注释进入vi...
封面图

给B站添加自动跳过片头片尾功能

2020-03-28
阅读 2 分钟
29.1k
最新在B站刷<夺宝幸运星>这个动画片,动画时长8:30,片头1:30,片尾长1:08.合着中间内容就6分钟左右,我却要看2:30的片头片尾.每次遇到片头片尾都要手动去拉进度条,简直不能忍,我的时间那么宝贵,那竟然让我看片头!而这时候我发现B站竟然么有跳过片头片尾的功能!好,你没有,为了更愉快的刷我的动画片,我给你写个.
封面图

是否发生过编辑问题解决与优化

2019-11-30
阅读 2 分钟
2.5k
这是一个分组编辑的页面,负责对设备进行分组编辑。在这个页面点击退出的时候会判断用户有没有进行编辑操作,如果有编辑操作但是没有保存,那就会拦截退出,弹窗提示用户保存。以此来避免用户误操作。这次卡顿是因为这个分组里有7000多台设备,导致最后判断用户是否进行过编辑的计算耗时太长.看来得看看我的实现方法有什...
封面图

浅谈sessionStorage的"继承"问题

2019-11-16
阅读 3 分钟
5.8k
按照我的认知,一般认为sessionStorage是页面级的,页面与页面之间互不影响。对于上面这个例子,我期待的输出应该只有一个length属性,而不是这种类似'继承'的表现。这和我的认知是有差异的,我得查一下。在查文档之前,我们先对这个问题进行简单的探索与分析。
封面图

文档书写中#和.用法上的区别

2019-11-09
阅读 1 分钟
1.5k
第一次看到这种写法的时候我很困惑,我觉得这一定是写错了:一般不都是用.表示调用吗? 他怎么用#表示呢?后来读的文档多了,我发现这种用法还比较常见。他是用于区别.的一种写法,表示不同的调用方式。就axios文档来说他的区别是这样的:
封面图

element transfer 不使用render-content方法给每一行加title的一种思路

2019-11-09
阅读 2 分钟
10.1k
最近在使用element-ui的el-transfer时候遇到一问题:穿梭框一行显示一条数据,但是有的数据比较长,一行显示不下,那就要把超出的部分用...展示,鼠标放上去的时候展示完整内容。一般的做法呢,就是通过css控制...显示,同时元素的title属性,这样鼠标放上去的时候可以悬浮展示完整数据。放在el-transfer的场景下就是通...
封面图

electron开发采坑小记

2019-07-12
阅读 6 分钟
7.8k
前言原文地址:electron开发采坑小记-SegmentFault 思否前前前前段时间做了个桌面端的项目(这篇文章拖了挺久了),功能大概是这样的:项目左右两栏结构左侧feed流信息展示右侧webview打开一个网站将左侧信息注入右侧网站中需求很简单,提高运营效率的辅助工具,但是因为一些原因需要做成一个桌面端。从前端一下子跨到PC...
封面图

git status将文件状态标为renamed问题探究

2019-02-26
阅读 1 分钟
4.6k
问题描述线上项目有一个小bug,我修改了xx.js中的一行代码解决了问题,然后webpack打包,准备提交代码。 {代码...} 这时候我发现,git status的输出为: {代码...} 我发现这不太对啊:renamed虽然可以体现出来webpack打包的时候改掉文件名hash值这个重命名的过程,但不能体现我改了文件内容啊。我觉得应该这样输出才对:...
封面图

[译]JavaScript的调用栈、回调队列和事件循环

2019-02-18
阅读 3 分钟
4.8k
译者按这篇文章可以看做是对Philip Roberts 2014年在JSConf演讲的《What the heck is the event loop anyway?》的一个总结。建议先看Philip Roberts的这个演讲然后再阅读本篇文章。这哥们儿的演讲语言幽默风趣,内容通俗易懂,非常值得一看。
封面图

使用Data URI Scheme优雅的实现前端导出csv

2019-02-17
阅读 3 分钟
6.7k
项目里需要实现一个导出csv的功能,这是个老生常谈的需求,而且我们使用的是iview的组件库,按道理说实现起来应该简单,但实则不然,我在做的时候遇到了一些问题。受限于请求需要token、后端分页、接口、性能等原因不得不放弃iview的导出方式。所以我需要寻找一种可行的、合理的、优雅的导出方案,那就是Data URI Scheme。
封面图

七牛云假注销小指南

2019-02-15
阅读 1 分钟
5.3k
某有七牛云账号一,久不用,遂发注销意,提工单,答曰:待客服电。客服电,注销之,有邮件为证。因号未登出,方现端倪。见账号现000前缀,遂生好奇:WTF? 假注销?验证之:以000 + 原账号为登录账号,辅原密码登录。中!假注销矣!遂发文,以志之,告同仁:七牛云,假注销。所以呢,七牛云所谓的注销就是把你的账号冻结在...
封面图

在gmail中使用邮件模板功能

2019-01-16
阅读 2 分钟
18.9k
写在前面gmail没有邮件模板的功能,虽然有一个类似的功能可以达到模板的效果,但是在gmail的帮助文档里面并没有提及,所以才有了这篇文章。
封面图

ubuntu下使用redshift开启护眼模式[成功]

2018-11-19
阅读 1 分钟
7.3k
前面提到flux这东西在一些机器上并不能work,而且也找到了一些关于他不能work的线索(戳这里看原因)。根据这些线索我们发现用flux不行了,得换用redshift,那好吧,我们就来装redshift。
封面图

ubuntu下使用f.lux开启护眼模式[失败]

2018-11-19
阅读 2 分钟
7.1k
最近我的个人电脑也转战ubuntu 16.04了,环境,常用软件配置需要应付一大堆问题。顺便记录一下,方便日后回顾也给后来的兄弟一点帮助。因为经常熬夜对着电脑,所以在windows上我装了flux来调节屏幕色温,以达到护眼的效果。而在ubuntu上我们可以继续使用flux来调节屏幕色温,因为flux是一个跨平台的应用。步骤如下:

前端实现html转pdf方法总结

2018-09-09
阅读 4 分钟
70.5k
最近要搞前端html转pdf的功能。折腾了两天,略有所收,踩了一些坑,所以做些记录,为后来的兄弟做些提示,也算是回馈社区。经过一番调(sou)研(suo)发现html导出pdf一般有这几种方式,各有各有优缺,下面简单介绍。

处理Ubuntu出现两个搜狗图标以及两个备选词框框的问题

2018-09-06
阅读 1 分钟
3.8k
问题复现 Ubuntu 16.04 LTS安装完搜狗输入法,配置完后发现有问题: 右上角有两个搜狗图标 打字的时候发现竟然有两个备选词的框框,其中一个是搜狗的,另一个带有Ubuntu的logo标志 很烦人,得解决 问题解决 问题解决全靠搜索。搜到问题原因如下:两个搜狗图标中有一个图标以及那个带有Ubuntu logo的备选词框框属于fcitx-...

Ubuntu启动robomongo失败问题解决

2018-01-14
阅读 1 分钟
3.1k
问题复现 从robomongo官网(robomongo:mongoDB可视化工具)下载来的文件,解压后尝试打开: 双击/bin目录下的robo3T图标没有任何的响应 尝试命令行启动robo3T返回以下错误信息: {代码...} 问题解决 把lib目录下带有libstdc++的文件删除就可以正常打开robo了. 过程总结 解决方法是在robomongo仓库的Issues(issues#1385)中找到...

突破前端反调试--阻止页面不断debugger

2017-12-10
阅读 2 分钟
76.1k
一次扒某网站的前端代码,打开控制台要看Network,结果发现他们页面一打开控制台就不断的debugger,100ms一次,很影响看页面内容。就像下面这样的

优雅的使用Chrome调试Node程序

2017-11-25
阅读 2 分钟
7.3k
原文链接:[链接]我不知道大家用什么来调试node程序。可能有的人用node-inspect,但是这货很久没更新了,而且一堆的bug用起来很不爽;可能有的人用命令行来,但是这样操作不够灵活;还有人只用console,这太不优雅;总之,调试node我们是认真的,我们需要更称手更优雅的方法。这篇文章将向你分享如何优雅的使用Chrome De...

控制台诡异录之展开与缩略不同

2017-10-28
阅读 1 分钟
3k
问题复现 最近朋友发给我这样的一个串代码: {代码...} 朋友说,这个输出不正确。我表示不信,就试了下: 从结果看,没毛病啊。朋友说,你展开看看,一看果然有问题 缩略状态的显示与展开的显示不同!!! 问题思考 这个问题的表现是: 缩略状态下显示原数组 [1, 4, 2, 3 ],展开状态下显示排序后的数组[1, 2, 3, 4 ]。 ...