- 博客(5)
- 收藏
- 关注
原创 loadsh的使用(真香系列)
Vue—loadsh的使用loadsh就是一套函数方法化简得工具库,它内部封装了诸多对字符串、数组、对象等常见数据类型的处理函数,其中部分是目前ECMAScript尚未制订的规范,但同时被业界所认可的辅助函数。每天使用npm安装Lodash的数量在百万级以上,这在一定程度上证明了其代码的健壮性可用性,确实值得我们在项目中一试。模块组成:Array: 适合于数组类型,比如填充数据、查找元素、数组分片等操作Collocation:适用于数组和对象类型,部分适用于字符串,比如分组、查找、过滤等操作Fu
2020-05-18 18:13:10
1805
原创 Generator实现原理剖析
先从一个简单的Generator实力开始~function* foo() { yield 'result1' yield 'result2' yield 'result3'} const gen = foo()console.log(gen.next().value)console.log(gen.next().value)console.log(gen.next().value)然后我们把他放在babel官网上的在线编译上看看ES5环境下 是如何转换gennerator的:
2020-05-17 15:04:27
2622
原创 Object.defineProperty是如何劫持get set 并且是如何深度监听、如何监听原生数组方法
对象的属性分为:数据属性和访问器属性。如果要修改对象的默认特性,必须使用Object.defineProperty方法,它接收三个参数:属性所在的对象、属性的名字、一个描述符对象。那么接下来先看看他如何深度监听原生数组的~~~~~~observer//先准备数据const data = { name: 'zhangsan', age: 20, info: { ...
2020-05-06 22:11:00
1644
1
原创 webpack性能优化-构建速度
我来了我来了 我开开心心的来发博客了~是的 这次是webpack的构建优化 没错!大量的注释又来了~~~~~~1.优化babel-loader2.happyPack(多进程打包)3.IgnorePlugin(避免印入无用模块)直接不引入,代码中没有4.ParalleUglifyPlugin(多进程压缩JS)5.noParse(避免重复打包 )引入 不打包6.自动刷新7.热...
2020-03-28 23:01:24
354
原创 记一次看diff源码如何操控虚拟DOM
由于第一次看diff源码 激发了本人的贼大的好奇心 心想哇塞 准备要看diff了 好激动 总结了以下几点(不喜勿喷哈)先https://github.com/snabbdom/snabbdom.git 克隆一下地址 因为diff也是依赖于snabbdom这个东东来操作虚拟DOM的 所以我们先下载源码看看具体情况如何:首先下载好印入眼前的是一群庞大的文件根据以往经验 我们先看看snabbd...
2020-03-26 21:17:27
408
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅