- 博客(12)
- 收藏
- 关注
原创 模块化开发
模块化开发是一种思想 是一种代码组织方式 |演变|模块化规范 |常用打包工具 |举例:基于模块化工具构建的现代web 应用 |打包工具的优化技巧演变 演变 1. 基于文件划分(原始方式): 功能/模块数据 - 单独存放到一个文件中 - <script> 引入 ...
2021-09-13 11:07:51
275
原创 webpack 5
web 1.0 : static website web 2.0 : AJAX web 3.0 : modern front-end | module | framework | sass | es 6 ..... 问题: 模块开发支持问题 | 实时监听 热更新 | 打包 压缩 | 新特新使用 |=>webpack 上手 webpack 5.45.1 webpack cli 4.7.2 live server ...
2021-09-10 10:19:32
240
原创 前端工程化
第一章: 概述 前端工程化: 提高效率, 降低成本, 保证质量 解决的问题:颜色代表不同问题分类 使用es6 兼容, lass sass 等无法直接运行, 模块化方式无法直接运行, 手动重复性动作(部署/压缩),团队风格统一,github 拉的代码质量不可保证。 开发/整体依赖后端接口。 涉及领域:(对照下图) 1. 脚手架创建项目结构,创建特定文件类型 2. 格式化,校验, 编译, 构建, 打包 3. 预览 / 热更新, sourceMap,Mock api ...
2021-08-18 10:24:12
242
原创 JavaScript 内存管理
内存: 可读写单元组成 内存管理: 开发者 => 申请 使用 释放 模拟 申请: 变量定义是自动分配 let obj = {} 使用: obj.name ="guohai" 释放: obj = null 垃圾: JavaScript 内存管理是自动的, 对象不再被引用, 非可达 可达对象:从根 EC(G)> VO(G)出发可以访问到的对象 // 引用 作用域链 GC算法 : 垃圾回收机制, 找垃圾,释放/回收空间 引用计数: 设置对象引用数,引用关系改变时改变. 判...
2021-08-11 13:31:24
131
原创 Proxy Class - object
// proxy : 访问代理 const person = { name: 'foo', age: 20, } const personProxy = new Proxy(person, { get(target, property) { console.log('get', target, property) return target[property] }, set(target, property, value) { console.log(.
2021-08-04 10:05:36
69
原创 TypeScript 初识
什么是TypeScript: Basedo on javascript , + 类型系统 + es6+ => Javascipt(编译结果) 特点: 类似 Flow , 渐进式,学习成本, 新概念引入 上手: 模块(开发依赖)安装 以及 tsc 编译出 js文件 配置文件: tsconfig.js ...
2021-08-03 16:16:40
2330
原创 block scope 和 block 的区别
block is aslo compound statement // block = compound statement 组合声明 { var a = 10; console.log(a); } // {} is a block if(true) { // if() 只接受一个statement声明 var a = 10; console.log(a); } // block scope // 包括在{}中定义的 let const 变量 /..
2021-08-02 13:09:09
246
原创 Facebook Flow
类型安全角度: 实参 和 行参 是否需要类型相同 弱类型: 可以随意隐式转换 (运行阶段报错)代码层面 强类型 : 不可随意隐式转换,(编译阶段报错)语法层面 类型检查角度 静态语言类型:变量声明时类型就明确,且不可变 动态语言类型: 运行阶段才能明确类型,类型随时可变 总结: 变量没有类型, 变量中的值时有类型的 (变量是个空盒子),薛定谔的????? 强类型的优势总结: 更早暴露错误 代码更智能,准确 重构更牢靠 减少不必要的类型判断 Flow- depency 类型注解 ,
2021-08-02 09:23:59
200
原创 ECMAScript 新特性
1. ECMAScript 与Javascript的关系 2.ECMAScript的发展过程 3. ECMAScript 2015 (ES6) 的新特性 关于ECMAScript 以及 它 和Javasctipt的关系: ECMAScript 是脚本语言 、缩写为ES, 是Javascript 的标准化规范. Javascript 是ECMAScript 的扩展语言. ECMAScript 提供最基本的语法,约定编写规则。 (语言层面)不能直接完成实际应用开发 Javascript 实现了...
2021-07-29 18:40:46
168
原创 函子functor笔记
Functor 函子 1. 作用 控制副作用,异常处理,异步操作 副作用是指: 让函数变得不纯的因素 2. 什么是函子: 函子是一个对象 函子是一个容器: 值(对内) + 处理值的函数map(fn)(对外) map(fn)参数:一个对值进行操作的函数 3. 手写 Functor #3.1 ’new‘关键词 class Container { constructor(value){ // 函子内部维护的值, 只有函子自己知道
2021-07-29 12:09:43
133
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人