2018年书单
2018年书单已完成 原则 刷新 奈飞文化手册 webkit技术内幕 图解HTTP 黑客与画家 码农翻身 程序员的数学 程序员修炼之道 CoffeScript程序设计 JavaScript函数式编程 数据可视化 你不知道的JavaScript(上) 微服务设计 凤凰项目 未完成 大话数据结构(1/3)Reading…… Node.js设计模式 Go程序设计语言 Go语言学习笔记 程序员的数学2 ...
阅读更多
蚂蚁金服支付宝前端面试
蚂蚁金服支付宝最近面了支付宝的数据中台前端,一个完整的流程下来,收获挺多的,现总结一下和将要走的路,以及职业的发展。 上机答题(1小时)周六接到微信过来的题目,要求在一个小时内答完所有的编程题。题目分别为正则、深拷贝、链式调用、斐波纳数列、构建树等等。由于时间关系,斐波纳数列查找和构建树没有写完。在这总结下这次面试的不足:1、链式调用:答题的方式可能有问题,用了面向对象去实现,但应该由函数式编程去 ...
阅读更多
为了重构,我调研了市面上的可视化方案
为了重构,我调研了市面上的可视化方案gio有个可视化方案,它构建于G2,与React封装在一起。之前的同事想法是想在这一套可视化方案中,希望通过配置文件绘制出配置文件里面的图。但可惜的是在绘图部分抽象不够好,导致在绘图部分的代码量较大,维护困难。在今年也看到有些视频分享值得我去学习和思考的。 D3 and React, Together - Shirley Wu kepler.gl在海量地理定位 ...
阅读更多
webkit多线程
浏览器多线程在《webkit技术内幕》中提到,在Chrome中,浏览器是多进程架构。那么在Firefox、IE中是否采用的多进程架构呢。webkit里面的代码都是开源的,但是Firefox、IE这先代码都不是,所以以下说的浏览器都指的是webkit。 为什么webkit是多线程架构在IE6的时候,IE6是一个多线程的架构。如果大家还有印象的话,我们在IE6进行前端调试的时候,往往会遇到浏览器卡住、 ...
阅读更多
今天开始学Go(一)
今天开始学Go,包管理(一)Node.js和Go之间,我选择Go。因为最年来太火了。之前在14年的时候也开始接触Go,但没有坚持学下来。下面是我写的两篇文章,太久了,不建议去看了。记录下当时入门的心态。 GO语言学习——环境搭配 GO语言学习——LITEIDE 拖延症这是永恒话题。下面记录我学Go的一些总结。目前我使用的是Go version 1.10.2。由于网上各种安装教程,go的命 ...
阅读更多
是时候想想redux、mobx、react Context、GraphQL
是时候想想redux、mobx、react在16年的时候,React行业内就开始提出,我们可能不需要Redux。渐渐的,这个声音持续扩大,甚至前几天React Amsterdam 2018在讲GraphQL的时候就提出Redux的缺点。那么当这些声音慢慢的在我的身边围绕的时候,我是时候想想Redux、Mobx、React Context、GraphQL了。 Redux我在2016年的时候,开始使用 ...
阅读更多
关于React16中的componentWillUnmout
关于React16中的componentWillUnmout问题最近在升级React的时候遇到一个奇怪的问题:当我们在另一个页面(以下称原始页)切换另一个页面(目标页)的时候,所期望的是在原始页中的数据重置,在目标页使用重置的数据。 理想很丰满,现实很残酷。 当切换至目标页面的时候,数据还是原始的。测试就开始报bug了。。。 想法然后我仔细想了一下,我们在React15中,React团队使用的是同 ...
阅读更多
头条前端面试(笔试 + 一面)
头条面试 近期参加头条面试,把面试过程整理一遍。 到头条总部,前台给了一份前端面试题,然后就带到小屋去做了。总览了一下整个题目,基础题居多,还有一道算法题。当时也有几道题做得不正确,算法题可以说思路也没有。最后总结也发现头条给的面试题不是很好,一会会在每道题下进行说明。 笔试:基础题1、有CSS实现一个三角箭头,如▶️。这确实是头条原题,题目中的「 有 」应该为「 用 」。这题之前我在做三角箭头 ...
阅读更多
Mobx源码分析(一)
Mobx源码分析(一)Mobx和Redux的设计理念有所不同,之前写的移动web中用的redux让我很烦躁。一个数据源需要写model,action,reducer,并且redux本身不支持异步操作,但javascript作为一个异步编程语言,这是不友善的。直到我发现Mobx,这款小巧,上手简单的数据管理直接被我用到项目中。而在开发的时候,慢慢的发现Mobx比Redux好处日渐增多。而从今天开始, ...
阅读更多
手写排序
手写排序给定一个数组,让它从小到大排序。相信大家在面试的时候,面试官通常会问的一道题。const arr = [9, 6, 4, 3, 5, 2, 8, 10, 20]; 有一个网站还是比较好的,可视化算法https://visualgo.net/en/sorting首先,先写一个数组交换方法,它需要的参数为一个数组,两个要交换的下标。 const swap = (arr, i, j) =&g ...
阅读更多