摘要: 引言 我们经常会碰到树形数据结构,比如组织层级、省市县或者动植物分类等等数据。下面是一个树形结构的例子: " " 在实际应用中,比较常见的做法是将这些信息存储为下面的结构,特别是当存在1对多的父/子节点关系时: 那么,如何将这种对象数组格式转换为层级树的格式呢?其实,利用 JavaScript 对象 阅读全文
posted @ 2020-01-03 10:13 李中凯 阅读(7833) 评论(0) 推荐(4) 编辑
摘要: 你可能在网上见过有人用 几个不同的字符写的各种稀奇古怪的 JavaScript 代码,虽然看起来奇怪,但是能正常运行!比如这个: 你猜运行结果是什么?你可以自己去控制台试一下。 看起来很神奇,但这到底是怎么回事呢? 事实上,你几乎可以用下面这 6 个字符写出任意的 JavaScript 程序: 很多 阅读全文
posted @ 2020-01-02 10:12 李中凯 阅读(1640) 评论(7) 推荐(2) 编辑
摘要: 我以前很喜欢 jQuery,而且说实话,我是先学jQuery,再学 JavaScript 的。所以我写这篇文章有点像是在背叛 jQuery。 我知道,关于为什么不应该用 jQuery 的文章已经汗牛充栋,但我只是想说下自己的亲身体验。 " " 不用 jQuery 用什么? 随着 web 的发展,新技 阅读全文
posted @ 2019-11-19 11:24 李中凯 阅读(1184) 评论(0) 推荐(1) 编辑
摘要: 几个月前,我的任务是将我们组的 Vue.js 项目构建配置升级到 Webpack 4。我们的主要目标之一是利用 tree shaking 的优势,即 Webpack 去掉了实际上并没有使用的代码来减少包的大小。现在,tree shaking 的好处将根据你的代码库而有所不同。由于我们的几个架构决策, 阅读全文
posted @ 2019-11-17 21:49 李中凯 阅读(11692) 评论(3) 推荐(0) 编辑
摘要: 阅读全文
posted @ 2019-11-15 17:07 李中凯 阅读(4115) 评论(0) 推荐(7) 编辑
摘要: 近日接到腾讯 CDC 前端开发团队的求职意向询问,在微信上简单地聊了下技术,然后抛给我一道面试题。题目内容是编写一个单机五子棋,用原生 web 技术实现,兼容 Chrome 即可,完成时间不作限制。同时还有几个要求: 1. 实现胜负判断,并给出赢棋提示。任意一方赢棋,锁定棋盘。 2. 尽可能考虑游戏 阅读全文
posted @ 2017-06-02 17:14 李中凯 阅读(6918) 评论(8) 推荐(18) 编辑
摘要: 今年是工作的第六个年头,从事专职前端开发也有四年多了。先后换过两家公司,从后台开发逐渐转到专职Web前端。 一开始我是微软.Net阵营的开发者,这源于大学时代的偏好。那个时候,在Windows平台上开发桌面应用和Web应用,.Net Framework有着不可比拟的优势。优雅无比的C 语言加上宇宙第 阅读全文
posted @ 2017-05-13 14:49 李中凯 阅读(1526) 评论(5) 推荐(6) 编辑
摘要: 接触 Node.js 已有多年,一直喜欢它的单线程模型和异步IO特性,以及 JavaScript 语言本身的灵活性。同时,JavaScript 前后端通吃,在全栈开发领域具有独特的优势。今天就来看看作为服务端语言的 JavaScript,完成一个简单的代理服务器功能是多么容易。 简单地说,代理服务器 阅读全文
posted @ 2016-12-02 09:37 李中凯 阅读(10689) 评论(3) 推荐(0) 编辑
摘要: 缘起 由于童心未泯,之前在手机上玩过钢琴模拟App,但是手机屏幕太小,始终觉得不过瘾。其实对于我这个连基本乐理都不懂的“乐盲”来说,就算给我一台真正的钢琴,我也玩不转。不过是图个新鲜、权当娱乐罢了。最近刚好入手一台带触摸屏的Lenovo Yoga 4 Pro,这倒给了我新的想象空间:大屏幕玩起来是不 阅读全文
posted @ 2016-08-22 11:20 李中凯 阅读(1203) 评论(0) 推荐(0) 编辑
摘要: 目前的工作项目分为前端和后台,双方事先约定接口,之后独立开发。后台每天开发完后在测试服务器上部署,前端连接测试服务器进行数据交互。前端和后台分开的好处是代码不用混在一个工程里一起build,互不干涉。但由此也引发出一个问题,那就是Ajax跨域。目前的项目是一个Single Page App, 基本上... 阅读全文
posted @ 2014-08-22 22:13 李中凯 阅读(5931) 评论(6) 推荐(1) 编辑