李刚的学习专栏

行胜于言,自强不息!纸上得来终觉浅,绝知此事要躬行!

排序:
默认
按更新时间
按访问量

JavaScript对象、函数(你不知道的JavaScript)

一、对象 var obj = {}; obj[true] = "foo"; obj[3] = "bar"; obj[obj] = "baz"; obj["true"]; obj["3"]; ob...

2015-08-09 20:13:04

阅读数:3856

评论数:5

JavaScript中的this(你不知道的JavaScript)

JavaScript中的this,刚接触JavaScript时大家都在大肆渲染说其多么多么的灵巧重要,然而自己并不关心;随着自己对JavaScript一步步深入了解,突然恍然大悟,原来它真的很重要!所以,自己花费了大约2周的时间去查贴、翻阅之前读的书籍,将this的全貌展示如下。 一、this是什...

2015-07-25 19:44:33

阅读数:6713

评论数:6

JavaScript作用域闭包(你不知道的JavaScript)

JavaScript闭包,是JS开发工程师必须深入了解的知识。3月份自己曾撰写博客《JavaScript闭包》,博客中只是简单阐述了闭包的工作过程和列举了几个示例,并没有去刨根问底,将其弄明白! 现在随着对JavaScript更深入的了解,也刚读完《你不知道的JavaScript(上卷)》这本书,...

2015-07-12 15:14:58

阅读数:3997

评论数:4

JavaScript词法作用域(你不知道的JavaScript)

JavaScript并不是传统的块级作用域,而是函数作用域! 一、作用域 1. JavaScript引擎在代码执行前会对其进行编译,在这个过程中,像var a = 2 这样的声明会被分解成两个独立的步骤: 第一步(编译阶段):var a 在其作用域中声明新变量。这会在最开始的阶段,也就是...

2015-06-04 21:20:08

阅读数:5114

评论数:0

JavaScript提升(你不知道的JavaScript)

最近,在读《你不知道的JavaScript(上卷)》这本书,书中详细阐述了JavaScript众多重要但经常被大家忽略的点,在此强烈推荐!!!书中,第4章讲述了“提升”,从示例出发讲述了变量和函数提升的过程,纠正了自己以前错误的理解(相信好多人理解都是错误)! 我们习惯将var a = 2;看做一...

2015-05-30 10:10:14

阅读数:5144

评论数:6

算法--基础

学习算法设计的重点就是把人类找到的求解问题的方法、步骤以过程化、形式化、机械化的形式表示出来,以便让计算机执行。 算法概述 定义 算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。 要素 算法由操作、控制结构、数...

2018-10-17 19:06:55

阅读数:12

评论数:0

Git代码管理流程(分支、fork、tag)

我们使用Git做代码管理时,经常会出现这种情况:项目需要稳步迭代升级(暂且叫做标品)的同时,定制化的需求接憧而至。然而定制化内容(不属于正常迭代升级的范围),我们该如何处理?下述如我想到的几种方式: 方式一:做逻辑分支 优点:代码无需单独管理,省事省力 缺点:定制内容一旦过多,对代码的整洁性会...

2018-10-13 08:22:29

阅读数:122

评论数:0

单页应用优化--权限

前段时间,撰写过“ 单页应用优化–懒加载”的问题,这篇我们描述一下单页应用的另外一个问题权限。提起权限,一般会涉及如下几种情况: 应用使用权【登录】 页面级别权限【菜单访问权限】 模块级别权限【区域<组件、按钮>是否显示】 数据级别权限【数据...

2018-09-13 13:53:53

阅读数:59

评论数:0

npm-shrinkwrap锁定依赖

写在前面 npm采用语义化的版本号 semver 进行控制,让开发过程中依赖的获取和升级变得非常容易,但不严格的版本号控制,也带来了不确定性~~ npm 建议使用semver版本,部分包不遵循semver; package.json 可以使用精确的版本号控制你的直接依赖...

2018-08-28 19:22:14

阅读数:91

评论数:0

技术领导力

下述内容,为阅读完《技术领导力》结合自身经历而来,有摘要有感悟~~ ​ 领导力(Leadership)指在管辖的范围内充分地利用人力和客观条件在以最小的成本办成所需的事,提高整个团体的办事效率的能力。 ​ 在新公司做了1年的小leader,自己感触还是很多的,再加上最近遇到的一些事...

2018-08-07 23:12:52

阅读数:77

评论数:0

Vue-第三方库扩展

​ 之前写过一篇 Vue-组件扩展 的文章,通常我们采用 extends 或 mixins 进行扩展组件;但项目中我们经常还会使用一些第三方库(Lodash, Moment等),如何调用这些工具方法智者见智仁者见仁。 ​ 我司现在大部分都是大数据可视化方面的工作,所以在系统中,倡导封装...

2018-07-31 09:33:10

阅读数:149

评论数:0

Vue-组件扩展

最近,新项目架构搭建在扩展组件的场景中:图表使用了extends方式,而公共业务server和view之间使用了mixins方式。对于二者的选择,我们通常会解释为extends的优先级高于mixins,但其真实的差异是由于其合并策略不同或者说在合并策略中执行的顺序不同导致的。源码 下述,简...

2018-06-18 22:34:30

阅读数:346

评论数:0

【ECharts】数据量差距大

在echarts图表展示时,会遇到数据量差距过大的情况,出现这种情况后,过小的数据往往会影响交互(比如,点击事件等) option = { xAxis: { type: 'category', data: ['Mon', 'Tue', 'Wed...

2018-05-25 18:00:42

阅读数:791

评论数:0

Git提交信息规范化

目的 统一团队Git Commit标准,便于后续代码review、版本发布、自动化生成change log; 可以提供更多更有效的历史信息,方便快速预览以及配合cherry-pick快速合并代码; 团队其他成员进行类git blame时可以快速明白代码用意; Git版本规范 分支...

2018-05-11 17:52:07

阅读数:1101

评论数:1

单页应用优化--懒加载

单页Web应用(single page web application,SPA)会一次性载入页面资源,利用本地计算能力渲染页面,提高页面切换速度与用户体验。由此带来了首屏加载缓慢耗时的诟病,这也是困扰前端开发工程师的一重大难题。 最近查阅了一些帖子,发现了一个极其强大的方法,其兼容性有待...

2018-05-02 19:16:53

阅读数:1455

评论数:16

Git生成多个ssh-keygen

作为新时代的开发者,大家一般会拥有自己的Github工程。同时公司又提供单独gitlab服务器,所以经常会遇到需要在同一设备下配置多个ssh key的情况,下述会阐述如何进行设置操作: 直接上手 第一步:生成指定名称的秘钥 $ ssh-keygen 首先 ssh-k...

2018-04-16 19:18:33

阅读数:807

评论数:10

深入理解ES6--用模块封装代码

用模块封装代码 在模块顶部创建的变量不会自动被添加到全局共享作用域(模块顶部this的值为undefined),必须导出后,外部代码才可访问。 浏览器中使用模块 <script>的type属性缺失或者包含一个javascript内容类型...

2018-04-10 23:05:12

阅读数:455

评论数:0

深入理解ES6--迭代器、生成器、代理、反射、Promise

迭代器(Iterator)和生成器(Generator) for-of循环及展开运算符…都是针对迭代器的!!! 不能使用箭头函数来创建生成器;ES6函数的简写方式可以(只需在函数名前加星号) 可迭代对象具有Symbol.iterator属性,ES6中,所有的集合对象(数组、Set集合...

2018-04-10 22:58:23

阅读数:180

评论数:0

深入理解ES6--Set、Map及Symbol

Set集合和Map集合 Set集合是一种无重复元素的列表,通常用来检测给定的值在某个集合中是否存在;Map集合内含多组键值对,通常用来缓存频繁取用的数据。 ES5中的问题 var map = Object.create(null) map[5] = 'foo' console...

2018-04-04 20:30:53

阅读数:131

评论数:0

深入理解ES6--对象、函数扩展

扩展对象的功能性 属性名称简写 let name = 'ligang' let person = { name, sayName() { console.log(name) } } javascript引擎会在访问作用域中查找其同名变量;如果找到,则变量的值被赋给对象字...

2018-04-02 19:27:53

阅读数:131

评论数:0

提示
确定要删除当前文章?
取消 删除