kavience

blog

置顶 Js-彻底了解This的指向

起因 对 js 的 this 指向问题还是会有点模糊,我决定下点功夫,写下这篇文章,彻底把 this 搞明白。 什么是 this ? 这也是我发出的第一个问题,究竟什么是 this ?在 js 中 this 代表的到底是什么?根据 w3c 的描述: The JavaScript this keyword refers to the object it belongs to. 在 js ......

置顶 Web前端优化总结

What 针对 web 前端优化方案的总结, 主要技术栈为 React。 Why 与以往 PHP, JSP 等服务端渲染不同, 现如今大多数 web 端采用 React, Vue, Angular 等客户端渲染方案。单页应用带来的好处是显而易见的, 前端开发人员可以专注于前端页面的交互, 后端人员专注于数据的处理, 分工明确。另一方面得益于 nodejs 的生态, 例如 npm 包管理, w......

世界在发展, 人类有进步吗

本文是受阮一峰老师的博客 为什么人类没有越来越闲? 启发,于是想独立的思考更多这个问题。 地球已经出现几十亿年,人类出现不过区区几百万年,而且真正开始在地球占领统治地位的时间则更短了。有时候我也时常在想,为什么我感觉现在人的生活并没有因为人类统治地位而更轻松?很明显,近现代一两百年的科技发展,将人类带上了一个新的台阶,我觉得这个变化不亚于人类第一次用火和人类第一次有国家、文明的概念。按理说,......

Jest单元测试

What 采用 Jest 对 react 项目进行单元测试。 Why 曾使用 Mocha 对项目进行过单元测试,但是 Mocha 需要配合一系列工具包( sinon, enzyme, chai, nyc )等,加上 Mocha 对 typescript 支持不是特别友好。所以打算采用 Jest 进行单元测试,目前的测试工具 Mocha、Jest、Ava 区别大致如下: 框架 断言 异步......

一道有趣的JavaScript题

题目 如下为一段代码, 请完善 sum 函数, 使得 sum(1, 2, 3, 4, 5, 6) 函数返回值为 21 , 需要在 sum 函数中调用 asyncAdd 函数, 且不能修改 asyncAdd 函数: 1234567891011121314151617181920212223242526/** * 请在 sum函数中调用此函数, 完成数值计算 * @param {*&#......

生命的脆弱

树叶的一生,只是为了归根吗? – 亚索 对生命的疑问 每当想起人生的意义的时候,我总是会想起 LOL 中亚索的这句话「树叶的一生,只是为了归根吗?」。我觉得他说的这句话,似乎适合让任何一个失落的人发出这样的呐喊,同时也会产生共鸣,人的一生,其实不也像一片树叶吗? 树叶源自于树枝,春天发芽,夏天茂盛,秋天落叶,冬天归根。而大多数人,少年时在家乡出生和长大,年轻时外出学习和工作,中年时成家立......

如果坚持一个行业五年

写在开头 这两天确实有点开始焦虑了,准确的来说,我好像一直都很焦虑。最近又有新想法了,想重新捡起 Android ,想做 APP 开发。回想起大学的时候,我一直都好想做 APP 开发,书也买了不少,视频也看了不少,但始终没有坚持下去。刚刚重新看了点关于 Android 的知识,回想起以前的一些‘经验’,不知怎的,有点黯然伤神。 当初为什么没有坚持下去呢?我一直觉得自己是个很浮躁又很有想法的人......

程序员的焦虑

写在开头 有时候我一直怀疑自己不适合做一个程序员,出身普普通通,小学六年从未接触过英语,接触计算机也是因为去网吧打游戏。小时候的我像大多数的人的童年一样,希望以后做个科学家,从没想过去做程序员,那时候连程序员这个职业是什么都不知道。一直到高中,吵着跟爸妈说要买电脑,说是为了学习,实则是为了打游戏。最疯狂的时候,痴迷到什么程度呢?高一高二每次开运动会的时候,我都是在家打游戏度过的。基本不参加一......

未来的路

序言 初衷 突然有那么一刻,我想写点什么,关于人生的一些思考。本来我曾希望只在博客里面写关于技术的东西,但是有的时候,我觉得总想写点什么才行,脑海里时不时会冒出一些 idea,如果不写下来,没过多久我觉得我就会忘记。所以,这将是我写这个系列的初衷,观点不一定正确,但从我开始写的时候,我也没想过让多少人看,也许根本没有人看,但这无关紧要,几十年后,让年纪大了的自己回头看看曾经 20 多岁的自己......

Terminal翻墙代理

What? 通过 proxychains-ng 实现 terminal 代理 Why? 目前的代理功能,大部分底层都是基于 socks5、http 等,然后配合插件如 SwitchyOmega 等,实现在浏览器端代理,或者是全局代理,但问题是在 terminal 下仍然不走代理。即使通过 export http_proxy=http://127.0.0.1:1081 https_pro......